Änderung der Passwortrichtlinie

Die von Haiilo mitgegebenen Richtlinien für die Komplexität von Passwörtern sind relativ seicht:
Sechs Zeichen und mindestens eine Zahl müssen im Passwort vorkommen. Die Komplexität der Passwörter könnt ihr über die REST API anpassen.

Um euch via API zu authentifizieren, benötigt ihr einen OAuth Token, bevor ihr Einstellungen vornehmen könnt.

Haiilo muss nicht neugestartet werden, Änderungen werden direkt übernommen.

Hinweis:

Die veränderte Komplexität gilt für neue Nutzer, die sich das erste Mal in Haiilo einwählen sowie für diejenigen, die ihr Passwort ändern oder zurücksetzen. Auf die Haiilo App hat die Änderung per REST-API keine Auswirkung.

OAuth Token anfordern

curl --user '<API_CLIENT_ID>':'<API_CLIENT_SECRET>' -X POST -d "grant_type=password&username=<username>&password=<password>" https://<COYO_BACKEND_URL>/api/oauth/token

Dieser Endpoint ist mit Basic Auth abgesichert. Die Zugangsdaten findest du in der Haiilo Administration unter API Clients.

Die Backend URL entspricht eurer Haiilo URL.

Als Response gibt es einen Bearer Token aka Access Token, der bei den weiteren Requests zur Authentifizierung angegeben werden muss.

Aktuelle Einstellungen anzeigen lassen

Führt ein GET auf die Settings aus.

curl -x GET https://<COYO_BACKEND_URL>/api/settings/public

Soll-Antwort:

{
         "linkPattern": "[linkPattern]",
         "emailPattern": "[emailPattern]",
         "networkName": "[networkName]",
         "phonePattern": "[phonePattern]",
         "jsLogThrottle": "[jsLogThrottle]",
         "passwordPattern": "[passwordPattern]"
}

Einstellungen bearbeiten

Kopiert die Antwort und nehmt eure gewünschten Anpassungen an "passwordPattern" vor. Beachtet bitte, dass das "passwordPattern" in RegEx geschrieben werden muss.

curl -x 
PUT
https://<COYO_BACKEND_URL>/api/settings?access_token=<ACCESS_TOKEN> -H "Authorization: Bearer <access_token>"-H 'Content-Type: application/json' -d '{ "linkPattern": "[linkPattern]", "emailPattern": "[emailPattern]", "networkName": "[networkName]", "phonePattern": "[phonePattern]", "jsLogThrottle": "[sLogThrottle]", "passwordPattern": "[passwordPattern]" }'

RegEx Regeln

^ Hiermit startet der Passwort String
(?=.*[a-z]) Das Passwort muss mindestens einen Kleinbuchstaben enthalten
(?=.*[A-Z]) Das Passwort muss mindestens einen Großbuchstaben enthalten
(?=.*[0-9]) Das Passwort muss mindestens eine Zahl enthalten
(?=.*[!@#\\$%\\^&]) Das Passwort muss mindestens ein Sonderzeichen enthalten
.{8,}$ Das Passwort muss mindestens 8 Zeichen lang sein

Beispiel

Hier ein Beispiel für ein passwordPattern mit den Anforderungen:

  • mindestens 10 Zeichen lang
  • mindestens ein Sonderzeichen (!\$%&#)
  • mindestens eine Ziffer (0-9) enthalten
  • mindestens einen Großbuchstaben enthalten 
"^(?=.*[A-Z])(?=.*[!@#\\$%\\^&])(?=.*[0-9]).{10,}$"

War dieser Beitrag hilfreich?