在仔細考慮之後,我們決定關閉新客戶對AWS大型主機現代化自我管理體驗的存取權,自 2026 年 6 月 30 日起生效。現有客戶可以繼續照常使用 服務。AWS會繼續投資改善AWS Mainframe Modernization 自我管理體驗的安全性和可用性,但我們不打算推出新功能。如需詳細資訊,請參閱AWS大型主機現代化可用性變更。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS Mainframe Modernization Service (受管執行期環境體驗) 不再向新客戶開放。對於與AWS Mainframe Modernization Service (受管執行期環境體驗) 類似的功能,探索AWS Mainframe Modernization Service (自我管理體驗)。現有客戶可以繼續正常使用該服務。如需詳細資訊,請參閱AWS大型主機現代化可用性變更。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Keycloak 設定 Gapwalk OAuth2 身分驗證
本主題說明如何使用 Keycloak 做為身分提供者 (IdP),為 Gapwalk 應用程式設定 OAuth2 身分驗證。在本教學課程中,我們使用 Keycloak 24.0.0。
先決條件
-
Gapwalk 應用程式
Keycloak 設定
-
前往 Web 瀏覽器中的 Keycloak 儀表板。預設登入資料為 admin/admin。前往左上角導覽列,並建立名稱為 的領域
demo,如下圖所示。
-
建立名稱為 的用戶端
app-demo。
localhost:8080將 取代為 Gapwalk 應用程式的地址
-
若要取得您的用戶端秘密,請選擇用戶端,然後選擇應用程式示範,然後選擇登入資料。
-
選擇用戶端,然後選擇用戶端範圍,然後新增預先定義的映射器。選擇領域角色。
-
使用下圖所示的組態編輯您的領域角色。
-
記住定義的權杖宣告名稱。您將需要在
gapwalk-application.security.claimGroupName屬性的 Gapwalk 設定定義中使用此值。
-
選擇 Realms 角色,並建立 3 個角色:
ADMIN、SUPER_ADMIN和USER。這些角色稍後會由 Gapwalk 應用程式映射至ROLE_ADMIN、ROLE_SUPER_ADMIN和 ,以便能夠存取一些受限ROLE_USER的 API REST 呼叫。
將 Keycloak 整合到 Gapwalk 應用程式
編輯您的 application-main.yml ,如下所示:
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
將 <KEYCLOAK_SERVER_HOSTNAME>、<YOUR_REALM_NAME>、<YOUR_CLIENT_ID> 和 <YOUR_CLIENT_SECRET> 取代為您的 Keycloak 伺服器主機名稱、您的領域名稱、您的用戶端 ID 和您的用戶端秘密。