Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a: Versión preliminar de SQL Server 2025 (17.x): Linux
En este artículo se describe cómo configurar y administrar directivas de contraseña de inicio de sesión de SQL para SQL Server en Linux.
Las directivas de contraseñas son un aspecto fundamental de la protección de cualquier entorno de base de datos. Aplican:
- Complejidad
- Vencimiento
- Cambios
Este mecanismo garantiza que los inicios de sesión que utilizan la autenticación de SQL Server sean seguros.
Nota:
Las directivas de contraseña están disponibles en Windows. Para obtener más información, vea Password Policy.
Configuración de directiva personalizada
A partir de la versión preliminar de SQL Server 2025 (17.x) en Linux, puede establecer los siguientes parámetros de configuración en el mssql.conf
archivo para aplicar una directiva de contraseña personalizada.
Opción de configuración | Descripción |
---|---|
passwordpolicy.passwordminimumlength |
Define el número mínimo de caracteres necesarios para una contraseña. Las contraseñas pueden tener hasta 128 caracteres. |
passwordpolicy.passwordhistorylength |
Determina el número de contraseñas anteriores que se deben recordar. |
passwordpolicy.passwordminimumage |
Especifica la duración mínima que debe esperar un usuario antes de volver a cambiar su contraseña. |
passwordpolicy.passwordmaximumage |
Establece la duración máxima que se puede usar una contraseña antes de que se deba cambiar. |
Nota:
Actualmente, passwordminimumlength
se puede establecer en menos de ocho caracteres. La contraseña debe seguir la directiva de contraseña predeterminada de SQL Server. De forma predeterminada, la contraseña debe tener al menos ocho caracteres y contener caracteres de tres de los siguientes cuatro conjuntos: mayúsculas, minúsculas, dígitos en base 10 y símbolos. Las contraseñas pueden tener hasta 128 caracteres. Use contraseñas lo más largas y complejas posible.
Hay dos maneras de configurar directivas de contraseña personalizadas para los inicios de sesión de autenticación de SQL en SQL Server en Linux:
- Aplicación de una directiva de contraseña personalizada con adutil
-
Configurar manualmente el
mssql.conf
archivo mediante la herramienta mssql-conf
Establecimiento de una directiva de contraseña personalizada con adutil
En entornos en los que la administración de directivas está centralizada en un servidor de Active Directory (AD), los administradores de dominio pueden establecer y modificar los valores de directiva de contraseñas en el servidor de AD. Además, la máquina Linux que ejecuta SQL Server también debe formar parte del dominio de Windows.
Use adutil para capturar la directiva de contraseña del servidor de AD y escribirla en el mssql.conf
archivo. Este método ofrece la ventaja de la administración centralizada y garantiza una aplicación coherente de directivas en el entorno de SQL Server.
Requisitos para adutil
Establecimiento de una sesión autenticada de Kerberos
Ejecute
kinit
consudo
para obtener o renovar el vale de concesión de vales (TGT) de Kerberos.Use una cuenta con privilegios para el comando
kinit
. La cuenta debe tener permiso para conectarse al dominio.
En el siguiente ejemplo, reemplace
<user>
por una cuenta con privilegios elevados en el dominio.sudo kinit <user>@CONTOSO.COM
Compruebe que el billete está concedido.
sudo klist
Para actualizar la directiva de contraseñas, consulte el dominio con adutil:
sudo adutil updatepasswordpolicy
Si el comando se ejecuta correctamente, debería ver un mensaje similar:
Successfully updated password policy in mssqlconf. Restart SQL Server to apply the changes.
Opcionalmente, puede agregar la
--path
opción al comando anterior. Puede usar esta opción si tiene la herramienta mssql-conf en una ubicación diferente de la ruta de acceso predeterminada. La ruta de acceso predeterminada es/opt/mssql/bin/mssql-conf
.Reinicie el servicio SQL Server:
sudo systemctl restart mssql-server
Establecimiento manual de la directiva de contraseña personalizada con mssql-conf
Puede establecer la directiva de contraseña de inicio de sesión de autenticación de SQL actualizando los parámetros del mssql.conf
archivo con mssql-conf. Este enfoque proporciona simplicidad y control directo sobre la configuración de la directiva.
Use este método cuando el host de Linux que ejecuta SQL Server no forme parte del dominio y no haya ningún controlador de dominio para obtener las directivas de contraseña.
Ejecute los siguientes comandos mssql-conf para establecer cada propiedad de configuración de directiva.
Establezca la longitud mínima de la contraseña en 14 caracteres, cumpliendo los requisitos de complejidad descritos en la directiva de contraseñas.
sudo /opt/mssql/bin/mssql-conf set passwordpolicy.minimumpasswordlength 14
Establezca la antigüedad mínima de la contraseña en un día. Los usuarios pueden cambiar su contraseña después de un día.
sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordminimumage 1
Establezca la longitud del historial de contraseñas en 8. Los usuarios deben usar ocho contraseñas únicas antes de reutilizar una antigua.
sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordhistorylength 8
Establezca la antigüedad máxima de la contraseña en 45 días. Un usuario puede usar una contraseña durante un máximo de 45 días antes de que el usuario deba cambiarla.
sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordmaximumage 45
Reinicie el servicio SQL Server.
sudo systemctl restart mssql-server
Limitaciones
Actualmente, minimumpasswordlength
no se puede establecer en más de 14 caracteres.
Después de actualizar la directiva de contraseña de grupo en Active Directory, debe ejecutar manualmente el adutil updatepasswordpolicy
comando para actualizar mssql.conf
. Este comando no se ejecuta automáticamente. Asegúrese de que la máquina Linux que ejecuta SQL Server forma parte del dominio o establézcala manualmente mediante mssql-conf.
En Active Directory, cada directiva de contraseña de nivel de grupo se puede definir o no definir mediante una casilla.
Sin embargo, la desactivación de la directiva no la deshabilita en SQL Server en Linux. Para evitar aplicar la directiva de contraseña personalizada, actualice la configuración en mssql-conf en lugar de usar la casilla.