Compartir a través de


Directiva de contraseñas

SQL Server puede emplear mecanismos de directiva de contraseñas de Windows. La directiva de contraseña se aplica a un inicio de sesión que usa la autenticación de SQL Server y a un usuario de base de datos independiente con contraseña.

SQL Server puede aplicar las mismas directivas de complejidad y expiración que se usan en Windows a las contraseñas que se usan en SQL Server. Esta funcionalidad depende de la NetValidatePasswordPolicy API.

Complejidad de contraseña

Las directivas de complejidad de contraseñas están diseñadas para disuadir los ataques por fuerza bruta aumentando el número de combinaciones de contraseñas posibles. Cuando se aplica la directiva de complejidad de contraseñas, las nuevas contraseñas deben cumplir las siguientes directrices:

  • La contraseña no contiene el nombre de cuenta del usuario.

  • La contraseña tiene al menos ocho caracteres.

  • La contraseña contiene caracteres de tres de las cuatro categorías siguientes:

    • Letras mayúsculas latinas (A a Z)

    • Letras minúsculas latinas (a a la z)

    • Dígitos de Base 10 (de 0 a 9)

    • Caracteres no alfanuméricos como: signo de exclamación (!), signo de dólar ($), signo de número (#) o porcentaje (%).

Las contraseñas pueden tener hasta 128 caracteres. Debe usar contraseñas que sean lo más largas y complejas posible.

Expiración de las contraseñas

Las directivas de expiración de contraseñas se usan para administrar la duración de una contraseña. Cuando SQL Server aplica la directiva de expiración de contraseñas, se recuerda a los usuarios que cambian las contraseñas antiguas y se deshabilitan las cuentas que tienen contraseñas expiradas.

Aplicación de las directivas

La aplicación de la directiva de contraseñas se puede configurar por separado para cada inicio de sesión de SQL Server. Use ALTER LOGIN (Transact-SQL) para configurar las opciones de directiva de contraseñas de un inicio de sesión de SQL Server. Las reglas siguientes se aplican a la configuración de la aplicación de directivas de contraseñas:

  • Cuando se cambia CHECK_POLICY a ON, se producen los siguientes comportamientos:

    • CHECK_EXPIRATION también se establece en ON a menos que se establezca explícitamente en OFF.

    • El historial de contraseñas se inicializa con el valor del hash de contraseña actual.

    • Duración del bloqueo de cuenta, umbral de bloqueo de cuenta y restablecer el contador de bloqueo de cuenta después también están habilitados.

  • Cuando se cambia CHECK_POLICY a OFF, se producen los siguientes comportamientos:

    • CHECK_EXPIRATION también se establece en OFF.

    • Se borra el historial de contraseñas.

    • Se restablece el valor de lockout_time .

No se admiten algunas combinaciones de opciones de directiva.

  • Si se especifica MUST_CHANGE, CHECK_EXPIRATION y CHECK_POLICY, deben establecerse en ON. Si no es así, la instrucción producirá un error.

  • Si CHECK_POLICY está establecido en OFF, CHECK_EXPIRATION no se puede establecer en ON. Se producirá un error en una instrucción ALTER LOGIN que tenga esta combinación de opciones.

Establecer CHECK_POLICY = ON impedirá la creación de contraseñas que son:

  • Nulo o vacío

  • Mismo que el nombre del equipo o el inicio de sesión

  • Cualquiera de las siguientes opciones: "password", "admin", "administrator", "sa", "sysadmin"

Es posible que la directiva de seguridad se establezca en Windows o que se reciba del dominio. Para ver la política de contraseñas en el equipo, use el complemento MMC de política de seguridad local (secpol.msc).

CREATE LOGIN (Transact-SQL)

ALTER LOGIN (Transact-SQL)

CREAR USUARIO (Transact-SQL)

ALTERAR USUARIO (Transact-SQL)

Crear un inicio de sesión

Crear un usuario de base de datos

Contraseñas seguras