Règles de mot de passe¶
Ces routes permettent de consulter et d'administrer la politique de mot de passe de Maarch Courrier. Les règles actives sont appliquées lors de la modification ou de la réinitialisation d'un mot de passe, ainsi que pendant l'authentification pour le verrouillage et le renouvellement.
Règles disponibles¶
| Libellé | Valeur | Effet lorsque la règle est activée |
|---|---|---|
minLength |
Nombre de caractères | Impose une longueur minimale au mot de passe |
complexityUpper |
Non utilisée | Impose au moins une lettre majuscule |
complexityNumber |
Non utilisée | Impose au moins un chiffre |
complexitySpecial |
Non utilisée | Impose au moins un caractère qui n'est ni une lettre ni un chiffre |
lockAttempts |
Nombre de tentatives | Verrouille le compte après ce nombre d'échecs d'authentification |
lockTime |
Nombre de minutes | Définit la durée du verrouillage après dépassement du nombre de tentatives |
historyLastUse |
Nombre de mots de passe | Interdit la réutilisation des derniers mots de passe enregistrés |
renewal |
Nombre de jours | Impose le renouvellement du mot de passe après cette durée |
Une règle n'est appliquée que si sa propriété enabled vaut true. Les règles lockAttempts et lockTime doivent être activées conjointement pour appliquer un verrouillage temporaire.
Consulter les règles de mot de passe¶
Route¶
Cette route est accessible sans authentification afin que les écrans de connexion, d'activation et de réinitialisation puissent afficher les contraintes applicables.
Retour¶
| Code HTTP | Type | Description |
|---|---|---|
200 |
object | Liste complète des règles de mot de passe |
Données¶
| Valeur | Type | Description |
|---|---|---|
rules |
array | Règles configurées |
rules[].id |
integer | Identifiant technique de la règle |
rules[].label |
string | Libellé technique de la règle |
rules[].value |
integer | Valeur numérique associée à la règle |
rules[].enabled |
boolean | Indique si la règle est active |
Exemple¶
{
"rules": [
{
"id": 1,
"label": "minLength",
"value": 12,
"enabled": true
},
{
"id": 2,
"label": "complexityUpper",
"value": 0,
"enabled": true
},
{
"id": 3,
"label": "complexityNumber",
"value": 0,
"enabled": true
},
{
"id": 4,
"label": "complexitySpecial",
"value": 0,
"enabled": true
},
{
"id": 5,
"label": "lockAttempts",
"value": 3,
"enabled": true
},
{
"id": 6,
"label": "lockTime",
"value": 5,
"enabled": true
},
{
"id": 7,
"label": "historyLastUse",
"value": 2,
"enabled": true
},
{
"id": 8,
"label": "renewal",
"value": 90,
"enabled": true
}
]
}
Modifier les règles de mot de passe¶
Route¶
La requête doit être authentifiée et l'appelant doit disposer du privilège admin_password_rules.
Paramètres¶
Body¶
| Valeur | Type | Obligatoire | Description |
|---|---|---|---|
rules |
array | Oui | Liste non vide des règles à modifier |
rules[].id |
integer | Oui | Identifiant technique de la règle |
rules[].label |
string | Oui | Libellé technique. Il doit correspondre à l'identifiant fourni |
rules[].value |
integer | Oui | Nouvelle valeur numérique de la règle |
rules[].enabled |
boolean | Oui | Active ou désactive la règle |
Il est possible de transmettre seulement les règles à modifier. Les règles absentes conservent leur configuration actuelle.
Exemple¶
{
"rules": [
{
"id": 1,
"label": "minLength",
"value": 12,
"enabled": true
},
{
"id": 4,
"label": "complexitySpecial",
"value": 0,
"enabled": true
}
]
}
Retour¶
| Code HTTP | Type | Description |
|---|---|---|
200 |
object | La requête de modification a été traitée |
400 |
object | La propriété rules est absente, vide ou n'est pas un tableau |
401 |
object | Authentification absente ou invalide |
403 |
object | L'appelant ne dispose pas du privilège admin_password_rules |
Exemple¶
Les entrées dont value, label ou enabled possède un type invalide sont ignorées. Une entrée est également ignorée si son couple id/label ne correspond pas à une règle existante. La route renvoie néanmoins un code 200 lorsque la propriété rules est un tableau non vide ; utilisez ensuite GET /rest/passwordRules pour vérifier les valeurs enregistrées.
Une requête traitée ajoute une entrée à l'historique d'administration des règles de mot de passe.