web-dev-qa-db-fra.com

Authentifier par programme l'utilisateur avec Keycloak dans java

J'ai parcouru la documentation de Keycloak mais je ne vois pas comment procéder. Avec Java, je voudrais prendre un ID utilisateur et un mot de passe valides, puis générer un jeton. Comment puis-je faire ceci?

9
user840930

--EDIT 2018-08-31--

Vous pouvez utiliser Authorization Client Java API . Une fois que vous avez créé un objet AuthzClient, vous pouvez transmettre le nom d'utilisateur et le mot de passe à AuthzClient # autorisation ( nom d'utilisateur, mot de passe) ou AuthzClient # getAccessToken (nom d'utilisateur, mot de passe) méthode pour authentifier l'utilisateur et obtenir le jeton d'accès (et/ou le jeton ID dans le premier cas):

// create a new instance based on the configuration defined in keycloak-authz.json
AuthzClient authzClient = AuthzClient.create();

// send the authorization request to the server in order to
// obtain an access token granted to the user
AccessTokenResponse response = authzClient.obtainAccessToken("alice", "alice");

Sur une note latérale, si possible, vous préférez réutiliser l'un des Keycloak Java Adapters pour couvrir plus de fonctionnalités, telles que d'autres méthodes d'authentification (l'utilisateur est généralement redirigé vers Keycloack WUI où vous pouvez appliquer des politiques d'authentification et d'autorisation très flexibles).

5
Cyril Dangerville