2017-03-01 1 views
1

Je fais appel /auth/realms/master/protocol/openid-connect/token pour obtenir un jeton d'accès en envoyant ci-dessous le contenu dans le corps, grant_type=password&client_id=example-docker-jaxrs-app&username=user&password=password&client_secret=1d27aedd-11c2-4ed2-97d5-c586e1f9b3cdKeycloak, ne pas retourner le jeton d'accès si l'action mise à jour du mot de passe choisi

mais quand je mets le mot de passe de mise à jour que l'action nécessaire à l'utilisateur de la console d'administration keycloak obtenir l'erreur suivante lorsque vous essayez d'obtenir par jeton ci-dessus mentionné api,

{ 
    "error": "invalid_grant", 
    "error_description": "Account is not fully set up" 
} 

une chose, quelle est la différence dans 2 paramètre, mot de passe temporaire et mettre à jour le mot de passe Action requise?

Temporary flag here in users credential tab

Update password as required action in user details tab

Répondre

2

Si vous marquez le mot de passe une action utilisateur temporaire update password est marqué comme nécessaire. Et jusqu'à ce que le mot de passe ait été mis à jour/défini par l'utilisateur, cette action est terminée, vous ne pourrez pas obtenir de jeton d'accès en utilisant cet utilisateur car le compte n'est pas "entièrement configuré" et est dans un type d'état intermédiaire où une action est requise pour terminer l'installation.

+0

Merci pour la réponse, alors comment quelqu'un peut-il valider le nom d'utilisateur/mot de passe la première fois. Je ne veux pas utiliser l'écran keycloak J'ai ma propre page de connexion, et nous utilisons/token api pour valider le nom d'utilisateur/mot de passe. –

+0

Vous pouvez éviter de marquer le mot de passe comme temporaire. Aucune action requise ne sera ajoutée au profil utilisateur et les informations d'identification peuvent être utilisées pour obtenir un jeton –