Partager via


Définir une stratégie de mot de passe personnalisée pour les connexions SQL dans SQL Server sur Linux

S’applique à : SQL Server 2025 (17.x) sur Linux

Cet article explique comment configurer et gérer des stratégies de mot de passe de connexion SQL pour SQL Server sur Linux.

Les stratégies de mot de passe constituent un aspect essentiel de la sécurisation de n’importe quel environnement de base de données. Ils appliquent les règles suivantes :

  • Complexité
  • Date d'expiration
  • Modifications

Cette application garantit que les connexions qui utilisent l’authentification SQL Server sont sécurisées.

Remarque

Les stratégies de mot de passe sont disponibles sur Windows. Pour plus d'informations, consultez Password Policy.

Paramètres de stratégie personnalisés

À compter de SQL Server 2025 (17.x) sur Linux, vous pouvez définir les paramètres de configuration suivants dans le mssql.conf fichier pour appliquer une stratégie de mot de passe personnalisée.

Option de configuration Descriptif
passwordpolicy.passwordminimumlength Définit le nombre minimal de caractères requis pour un mot de passe. Les mots de passe peuvent comporter jusqu’à 128 caractères.
passwordpolicy.passwordhistorylength Détermine le nombre de mots de passe précédents qui doivent être mémorisés.
passwordpolicy.passwordminimumage Spécifie la durée minimale pendant laquelle un utilisateur doit attendre avant de modifier à nouveau son mot de passe.
passwordpolicy.passwordmaximumage Définit la durée maximale d’utilisation d’un mot de passe avant qu’il ne soit modifié.

Remarque

Actuellement, la valeur passwordminimumlength peut être définie sur moins de huit caractères. Votre mot de passe doit suivre la politique de mot de passe par défaut de SQL Server. Par défaut, le mot de passe doit avoir au moins huit caractères appartenant à trois des quatre groupes suivants : lettres majuscules, lettres minuscules, chiffres de base 10 et symboles. Les mots de passe peuvent comporter jusqu'à 128 caractères. Utilisez des mots de passe aussi longs et complexes que possible.

Il existe deux façons de configurer des stratégies de mot de passe personnalisées pour les connexions d’authentification SQL dans SQL Server sur Linux :

Définir une stratégie de mot de passe personnalisée avec adutil

Dans les environnements où la gestion des stratégies est centralisée dans un serveur Active Directory (AD), les administrateurs de domaine peuvent définir et modifier les valeurs de stratégie de mot de passe dans le serveur AD. En outre, la machine Linux exécutant SQL Server doit également faire partie du domaine Windows.

Utilisez adutil pour récupérer la stratégie de mot de passe du serveur AD et l’écrire dans le mssql.conf fichier. Cette méthode offre l’avantage de la gestion centralisée et garantit une application cohérente des stratégies dans l’environnement SQL Server.

Configuration requise pour adutil

  1. Établir une session authentifiée Kerberos

    • Exécutez kinit avec sudo pour obtenir ou renouveler le ticket d’octroi de ticket Kerberos (TGT).

    • Utilisez un compte privilégié pour la commande kinit. Le compte doit avoir l’autorisation de se connecter au domaine.

    Dans l’exemple suivant, remplacez <user> par un compte avec des privilèges élevés dans le domaine.

    sudo kinit <user>@CONTOSO.COM
    
  2. Vérifiez que le ticket est accordé :

    sudo klist
    
  3. Pour mettre à jour la stratégie de mot de passe, interrogez le domaine avec adutil :

    sudo adutil updatepasswordpolicy
    

    Si la commande réussit, un message similaire doit s’afficher :

    Successfully updated password policy in mssqlconf.
    Restart SQL Server to apply the changes.
    

    Si vous le souhaitez, vous pouvez ajouter l’option --path à la commande précédente. Vous pouvez utiliser cette option si vous disposez de l’outil mssql-conf dans un autre emplacement que le chemin par défaut. Le chemin d’accès par défaut est : /opt/mssql/bin/mssql-conf.

  4. Redémarrez le service SQL Server :

    sudo systemctl restart mssql-server
    

Définir manuellement une stratégie de mot de passe personnalisée avec mssql-conf

Vous pouvez définir la stratégie de mot de passe de connexion d’authentification SQL en mettant à jour les paramètres dans le mssql.conf fichier avec mssql-conf. Cette approche offre une simplicité et un contrôle direct sur les paramètres de stratégie.

Utilisez cette méthode lorsque l’hôte Linux qui exécute SQL Server ne fait pas partie du domaine et qu’il n’existe aucun contrôleur de domaine à partir duquel obtenir les stratégies de mot de passe.

Exécutez les commandes mssql-conf suivantes pour définir chaque propriété de configuration de stratégie.

  1. Définissez la longueur minimale du mot de passe sur 14 caractères, conformément aux exigences de complexité décrites dans la stratégie de mot de passe.

    sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordminimumlength 14
    
  2. Définissez l’âge minimal du mot de passe sur un jour. Les utilisateurs peuvent modifier leur mot de passe après un jour.

    sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordminimumage 1
    
  3. Définissez la longueur de l’historique des mots de passe sur 8. Les utilisateurs doivent utiliser huit mots de passe uniques avant de réutiliser un ancien mot de passe.

    sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordhistorylength 8
    
  4. Définissez l’âge maximal du mot de passe sur 45 jours. Un utilisateur peut utiliser un mot de passe pendant jusqu’à 45 jours avant que l’utilisateur ne puisse le modifier.

    sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordmaximumage 45
    
  5. Redémarrez le service SQL Server.

    sudo systemctl restart mssql-server
    

Limites

Actuellement, le minimumpasswordlength paramètre ne peut pas être défini sur plus de 14 caractères.

Après avoir mis à jour la stratégie de mot de passe de groupe dans Active Directory, vous devez exécuter manuellement la adutil updatepasswordpolicy commande pour la mettre à jour mssql.conf. Cette commande ne s’exécute pas automatiquement. Vérifiez que la machine Linux exécutant SQL Server fait partie du domaine ou définissez-la manuellement à l’aide de mssql-conf.

Dans Active Directory, chaque stratégie de mot de passe au niveau du groupe peut être définie ou non définie à l’aide d’une case à cocher.

Capture d’écran du paramètre de stratégie de sécurité de longueur minimale du mot de passe.

Toutefois, la désactivation de la stratégie ne la désactive pas dans SQL Server sur Linux. Pour éviter d’appliquer la stratégie de mot de passe personnalisée, mettez à jour les paramètres dans mssql-conf au lieu de vous appuyer sur la case à cocher.