我想在 Amazon Cognito 使用者集區中將 Auth0 設定為 OIDC 供應商。
簡短描述
Amazon Cognito 使用者集區允許使用第三方 OpenID Connect 身分供應商 (OIDC) ,例如 Salesforce 或 Ping 身分進行登錄。要將 Auth0 設定為 OIDC 供應商,您需要具有應用程式用戶端和網域名稱的 Amazon Cognito 使用者集區,以及具有 Auth0 應用程式的 Auth0 帳戶。
解決方案
按照以下步驟創建或設定:
- Auth0 帳戶
- Auth0 應用程式
- OIDC 設定
- 應用程式用戶端設定
如果您尚未這樣做,請創建一個帶有用戶、應用程式用戶端和網域名稱的 Amazon Cognito 使用者集區。
創建 Auth0 帳戶
如果您已經擁有 Auth0 帳戶,請登錄帳戶。若要創建 Auth0 帳戶,請按照開始使用 Auth0 文件中的指示進行操作。
創建 Auth0 應用程式
- 在 Auth0 網站中,選擇 Dashboard (儀表板)。
- 在導覽窗格中,打開左邊窗格上的 Applications (應用程式),然後點擊 Create Application (創建應用程式)。
- 在對話方塊中,輸入應用程式的名稱,例如 App1。
- 在 Choose an application type (選擇應用程式類型) 中,選擇 Single Webpage Applications (單一網頁應用程式)。
- 選擇 Create (建立)。
在 Auth0 應用程式的應用程式設定標籤中,記下 Client ID (用戶端 ID)、Client Secret (用戶端密碼) 和 Domain (網域)。
在 Allowed Callback URLs (允許的回呼 URL) 區段中,確定已經為使用者集區添加 Amazon Cognito 回呼網域。網域格式類似於:
https://<cognito-domain>.auth.<region>.amazoncognito.com/oauth2/idpresponse。
設定使用者集區的 OIDC 設定
- 打開 Amazon Cognito 主控台,然後選擇 Manage User Pools (管理使用者集區)。
- 選擇您的使用者集區,然後在導覽窗格中選擇 Identity providers (身分供應商)。
- 選擇 OpenID Connect。
- 輸入 Auth0 應用程式中的 Client ID (用戶端 ID) 和 Client secret (用戶端密碼)。
- 選擇 Attributes request method (屬性請求方法) 下拉式清單,然後選擇 GET (取得)。
- 在 Authorization (授權) 方格中,輸入 phone (電話)、email (電郵)、openid 和 profile (設定檔)。
- 在 Issuer (發行者) 方格中,加入 Auth0 主控台的網域名稱,例如:https://example.auth0.com。
- 選擇 Create provider (建立供應商),然後選擇 Run discovery (執行探索)。
- 選擇 Create (建立)。
- 在導覽窗格中,選擇 Attribute mapping (屬性映射)。
- 在 OIDC attribute (OIDC 屬性) 區段中,為 email (電郵) 創建屬性映射。OIDC 屬性 email (電郵) 映射到使用者集區屬性 email (電郵)。
為使用者集區設定應用程式用戶端設定
- 打開 Amazon Cognito 主控台,然後選擇 App client settings (應用程式用戶端設定)。
- 在 Enabled identity providers (啟用的身分供應商) 中,選擇 Auth0 和 Cognito User Pool (Cognito 使用者集區) 勾選方塊。
- 在 Callback URLs (回呼 URL) 中,輸入 URL。
- 在 Sign out URL (登出 URL) 中,輸入使用者在登出後被重新引導到的 URL。
- 在 Allowed OAuth Flows (允許的 OAuth 流程) 中,確保至少選取了 Implicit grant (隱含授與) 勾選方塊。
- 在 Allowed OAuth Scopes (允許的 OAuth 範圍) 中,確保至少選取了 email (電郵) 和 openid 勾選方塊。
- 選擇 Save changes (儲存變更)。
測試設定
- 打開 Amazon Cognito 主控台,選擇 Manage User Pools (管理使用者集區)。
- 在導覽窗格中,選擇 App client settings (應用程式用戶端設定)。
- 選擇您的應用程式用戶端,然後選擇 Launch Hosted UI (啟動託管 UI)。
- 在 Hosted UI (託管 UI) 頁面中,選擇 Auth0,然後登錄到 Auth0 登錄頁面。
- 該頁面將重新引導至應用程式用戶端設定所指定的回呼 URL。
- (選用) 您可以在使用者集區的使用者和群組設定中檢查創建的 Auth0 使用者。
相關資訊
將 OIDC 身分供應商添加到使用者集區