Valeur système IBM i (AS/400) · Sécurité
QPWDLMTCHR
Caractères interdits dans un mot de passe
Liste les caractères (lettres, chiffres, #, $, @, _) qu'un mot de passe ne peut pas contenir, afin d'éviter des mots du dictionnaire ou des caractères mal gérés ailleurs.
À quoi elle sert
Cette valeur dresse la liste des caractères refusés dans un mot de passe : lettres A-Z, chiffres 0-9 et les caractères spéciaux #, $, @ et _. La documentation fixe un maximum de 10 caractères restreints ; *NONE n'impose aucune restriction.
Un usage classique consiste à interdire les voyelles pour empêcher les mots existants, et les caractères spéciaux #, $ et @ pour la compatibilité avec d'autres systèmes. Il faut les droits spéciaux *ALLOBJ et *SECADM.
Les valeurs possibles
| Valeur | Signification |
|---|---|
*NONE | Aucun caractère interdit (valeur livrée). |
Liste de caractères | Jusqu'à 10 caractères parmi A-Z, 0-9, #, $, @ et _ ; un mot de passe qui en contient un est refusé. |
Prise en compte : Immédiate, pour les prochains changements de mot de passe.
La valeur recommandée
Si vous gardez le niveau de mot de passe 0 ou 1, restreindre les voyelles est le conseil historique d'IBM. Aux niveaux 2 et plus, cette valeur n'est pas appliquée : utilisez QPWDRULES pour exprimer vos règles.
La changer
CHGSYSVAL SYSVAL(QPWDLMTCHR) VALUE('AEIOU')
CHGSYSVAL SYSVAL(QPWDLMTCHR) VALUE(*NONE)
Pour lire la valeur actuelle et celle de la livraison, en SQL :
SELECT SYSTEM_VALUE_NAME, SYSTEM_VALUE, SHIPPED_DEFAULT_VALUE
FROM QSYS2.SYSTEM_VALUE_INFO
WHERE SYSTEM_VALUE_NAME = 'QPWDLMTCHR'
Le piège
La valeur n'est pas appliquée quand QPWDLVL vaut 2 ou plus (la documentation de sécurité précise « 2 ou plus », donc 3 et 4 aussi). Après un passage à ces niveaux, la restriction disparaît sans avertissement.