AWS Le service de modernisation du mainframe (expérience de l'environnement d'exécution géré) n'est plus ouvert aux nouveaux clients. Pour des fonctionnalités similaires au service de modernisation AWS du mainframe (expérience de l'environnement d'exécution géré), explorez le service de modernisation AWS du mainframe (expérience autogérée). Les clients existants peuvent continuer à utiliser le service normalement. Pour plus d'informations, consultez la section Modification de la disponibilité de la modernisation du AWS mainframe.
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Configurer l' OAuth2 authentification Gapwalk avec Keycloak
Cette rubrique décrit comment configurer l' OAuth2 authentification pour les applications Gapwalk utilisant Keycloak comme fournisseur d'identité (IdP). Dans ce tutoriel, nous utilisons Keycloak 24.0.0.
Conditions préalables
-
Application Gapwalk
Configuration de Keycloak
-
Accédez à votre tableau de bord Keycloak dans votre navigateur Web. Les informations d'identification par défaut sont admin/admin. Accédez à la barre de navigation en haut à gauche et créez un domaine portant le nom
demo, comme indiqué dans l'image suivante.
-
Créez un client portant ce nom
app-demo.
Remplacez
localhost:8080par l'adresse de votre application Gapwalk
-
Pour obtenir le secret de votre client, choisissez Clients, app-demo, puis Credentials.
-
Choisissez Clients, puis Étendue du client, puis Ajouter un mappeur prédéfini. Choisissez les rôles du domaine.
-
Modifiez votre rôle de domaine avec la configuration illustrée dans l'image suivante.
-
N'oubliez pas le nom de demande de jeton défini. Vous aurez besoin de cette valeur dans la définition des paramètres Gapwalk de la
gapwalk-application.security.claimGroupNamepropriété.
-
Choisissez les rôles Realms, puis créez 3 rôles :
SUPER_ADMINADMIN, etUSER. Ces rôles sont ensuite mappés àROLE_SUPER_ADMINROLE_ADMIN, etROLE_USERpar l'application Gapwalk pour pouvoir accéder à certains appels REST d'API restreints.
Intégrez Keycloak dans l'application Gapwalk
Modifiez votre application-main.yml comme suit :
gapwalk-application.security: enabled gapwalk-application.security.identity: oauth gapwalk-application.security.issuerUri: http://<KEYCLOAK_SERVER_HOSTNAME>/realms/<YOUR_REALM_NAME> gapwalk-application.security.claimGroupName: "keycloak:groups" gapwalk-application.security.userAttributeName: "preferred_username" # Use "username" for cognito, # "preferred_username" for keycloak # or any other string spring: security: oauth2: client: registration: demo: client-id: <YOUR_CLIENT_ID> client-name: Demo App client-secret: <YOUR_CLIENT_SECRET> provider: keycloak authorization-grant-type: authorization_code scope: openid redirect-uri: "{baseUrl}/login/oauth2/code/{registrationId}" provider: keycloak: issuer-uri: ${gapwalk-application.security.issuerUri} authorization-uri: ${gapwalk-application.security.issuerUri}/protocol/openid-connect/auth jwk-set-uri: ${gapwalk-application.security.issuerUri}/protocol/openid-connect/certs token-uri: ${gapwalk-application.security.issuerUri}/protocol/openid-connect/token user-name-attribute: ${gapwalk-application.security.userAttributeName} resourceserver: jwt: jwk-set-uri: ${gapwalk-application.security.issuerUri}/protocol/openid-connect/certs
Remplacez<KEYCLOAK_SERVER_HOSTNAME>, <YOUR_REALM_NAME><YOUR_CLIENT_ID>, et par le nom <YOUR_CLIENT_SECRET> d'hôte de votre serveur Keycloak, votre nom de domaine, votre identifiant client et votre secret client.