Tous les produits
Search
Centre de documentation

ApsaraDB RDS:Custom password policies

Dernière mise à jour :Aug 19, 2026

Le plugin validate_password pour RDS for MySQL vous permet d'appliquer des règles de complexité personnalisées aux mots de passe des comptes de base de données, notamment la longueur minimale, la composition des caractères et l'interdiction d'utiliser le nom d'utilisateur comme mot de passe.

Remarque

Cette fonctionnalité est gratuite.

Fonctionnement

La validation des mots de passe dans RDS for MySQL s'effectue à deux niveaux indépendants :

  • Niveau de la plateforme RDS — Applique une règle de base fixe chaque fois que vous créez ou réinitialisez un mot de passe via la console RDS ou l'API. Cette règle ne peut pas être désactivée ni remplacée par les paramètres du plugin.

  • Niveau du plugin — Le plugin validate_password applique vos règles personnalisées. Ces règles s'appliquent au niveau MySQL et sont distinctes de la règle de base de la plateforme.

Comprendre ce modèle à deux niveaux vous aide à anticiper les règles applicables et à résoudre les problèmes de rejet.

Versions prises en charge

  • MySQL 5.7

  • MySQL 8.0

Étape 1 : Installer le plugin validate_password

  1. Connectez-vous à l'instance RDS for MySQL à l'aide d'un compte privilégié.

  2. Exécutez la commande suivante pour installer le plugin.

    INSTALL PLUGIN validate_password SONAME 'validate_password.so';
  3. Vérifiez l'installation.

    SHOW GLOBAL VARIABLES LIKE 'validate_password%';

    Si le plugin est correctement installé, la sortie liste les variables validate_password.

    Returned result

  4. Pour les instances disposant d'une architecture primaire/secondaire (édition Haute disponibilité ou édition Cluster), installez également le plugin sur le nœud secondaire. Le plugin n'est pas synchronisé automatiquement. Pour l'installer sur le nœud secondaire, effectuez un basculement manuel primaire/secondaire afin de basculer vers le nœud secondaire, puis répétez les étapes 1 à 3. Si vous ignorez cette étape, la stratégie de mot de passe devient invalide après un basculement.

    Remarque

    Une fois le plugin installé sur les deux nœuds, les paramètres de stratégie de mot de passe configurés dans la console RDS sont automatiquement synchronisés avec le nœud secondaire ; aucune configuration supplémentaire n'est nécessaire.

Étape 2 : Configurer les paramètres de la stratégie de mot de passe

  1. Accédez à la page Instances. Dans la barre de navigation supérieure, sélectionnez la région où se trouve votre instance. Cliquez sur l'ID de l'instance.

  2. Dans le volet de navigation de gauche, cliquez sur Parameters.

  3. Recherchez et modifiez les paramètres loose_validate_password. Pour obtenir des instructions, consultez la rubrique Définir les paramètres de l'instance.

Important

Le plugin doit être installé avant de modifier ces paramètres. Les modifications n'ont aucun effet si le plugin n'est pas installé. Pour la référence complète des paramètres, consultez la documentation officielle MySQL.

Le tableau suivant décrit les paramètres configurables.

Paramètre Versions prises en charge Description Exemple
loose_validate_password_check_user_name 5.7 Contrôle si le mot de passe peut correspondre au nom d'utilisateur. ON (par défaut) : autorisé. OFF : non autorisé. Définissez sur OFF pour interdire les mots de passe identiques au nom d'utilisateur.
loose_validate_password_policy 8.0, 5.7 Niveau de vérification de la robustesse. 0 : vérifie uniquement la longueur. 1 (par défaut) : vérifie la longueur, les chiffres, les lettres majuscules et minuscules, ainsi que les caractères spéciaux. 2 : identique au niveau 1 (le fichier de dictionnaire n'est pas pris en charge). Définissez sur 1 pour une application standard.
loose_validate_password_length 8.0, 5.7 Longueur minimale du mot de passe. MySQL 5.7 : 0–256, par défaut 8. MySQL 8.0 : 1–12, par défaut 8. Définissez sur 10 pour exiger au moins 10 caractères.
loose_validate_password_number_count 5.7 Nombre minimal de chiffres. Plage : 0–256, par défaut 1. Définissez sur 2 pour exiger au moins 2 chiffres.
loose_validate_password_mixed_case_count 5.7 Nombre minimal de lettres majuscules et minuscules dans le mot de passe. Plage : 0–256, par défaut 1. Définissez sur 2 pour exiger au moins une lettre majuscule et une lettre minuscule (soit un total de 2 lettres de casse mixte).
loose_validate_password_special_char_count 5.7 Nombre minimal de caractères spéciaux. Plage : 0–256, par défaut 1. Définissez sur 1 pour exiger au moins 1 caractère spécial.

Formule de calcul de la longueur du paramètre

La valeur loose_validate_password_length doit satisfaire la condition suivante :

length >= number_count + (2 × mixed_case_count) + special_char_count

Si la valeur définie ne respecte pas cette exigence, RDS ajuste automatiquement length pour qu'elle corresponde au résultat de la formule.

Exemple : Si number_count = 2, mixed_case_count = 2 et special_char_count = 1, la length minimale valide est 2 + (2 × 2) + 1 = 7.

Contraintes

Règles de base de la plateforme RDS

Quels que soient les paramètres du plugin, tous les mots de passe créés ou réinitialisés via la console RDS ou les opérations d'API CreateAccount / ResetAccountPassword doivent respecter les exigences suivantes :

  • Longueur comprise entre 8 et 32 caractères

  • Au moins trois des types de caractères suivants : lettres majuscules, lettres minuscules, chiffres et caractères spéciaux (!@#$%^&*()_+-=)

Ces règles s'appliquent même si vous configurez le plugin pour autoriser des mots de passe plus courts ou plus simples.

Définition de mots de passe de moins de 8 caractères (non recommandé)

L'ajustement des paramètres du plugin seul ne permet pas de contourner le minimum de 8 caractères imposé par la plateforme RDS. Même si loose_validate_password_length est défini sur 5, la console et l'API exigent toujours au moins 8 caractères.

Pour définir un mot de passe de moins de 8 caractères, utilisez la commande SQL SET PASSWORD afin de contourner directement la vérification de la plateforme. Utilisez cette méthode uniquement dans des environnements de test. Ne l'utilisez pas en production.

Étapes suivantes