本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
新增 SAML 2.0 身分提供者
您的應用程式使用者可以使用 SAML 2.0 身分提供者 (IdP) 登入。當您的客戶是組織的內部客戶或連結的企業時,您可以透過 IdPs 社交 IdP 選擇 SAML 2.0 IdPs。當社交 IdP 允許所有使用者註冊帳戶時,SAML IdP 更可能與組織控制的使用者目錄配對。無論您的使用者直接或透過第三方間接登入,所有使用者在使用者集區中都有設定檔。如果您不想新增透過 SAML 身分提供者,請略過此步驟。
如需詳細資訊,請參閱搭配使用者集區使用 SAML 身分提供者。
您必須更新 SAML 身分提供者並設定您的使用者集區。如需有關如何將使用者集區新增為 SAML 2.0 身分提供者之依賴方或應用程式的資訊,請參閱 SAML 身分提供者的文件。
您還必須向 SAML 身分提供者提供聲明消費者服務 (ACS) 端點。在 SAML 身分提供者中為 SAML 2.0 POST 繫結設定使用者集區網域中的下列端點。如需使用者集區網域的詳細資訊,請參閱 設定使用者集區網域。
https://Your user pool domain/saml2/idpresponse With an Amazon Cognito domain: https://<yourDomainPrefix>.auth.<region>.amazoncognito.com/saml2/idpresponse With a custom domain: https://Your custom domain/saml2/idpresponse
您可以在 Amazon Cognito 主控台
對於某些 SAML 身分提供者,您也需要提供服務提供者 (SP) urn,也稱為對象 URI 或 SP 實體 ID,格式為:
urn:amazon:cognito:sp:<yourUserPoolID>
您可以在 Amazon Cognito 主控台
您也應配置 SAML 身分提供者,以為您的使用者集區中的任何必要屬性提供屬性值。通常 email 為使用者集區必要的屬性。此情況下,SAML 身分提供者應在 SAML 聲明中提供 email 值 (宣告)。
Amazon Cognito 使用者集區支援與 POST 繫結端點進行 SAML 2.0 聯合。這不需要您的應用程式擷取或剖析 SAML 聲明回應,因為使用者集區會透過使用者代理程式直接從您的身分提供者接收 SAML 回應。
在您的使用者集區中配置 SAML 2.0 身分提供者
-
前往 Amazon Cognito 主控台
。如果出現提示,請輸入您的 AWS 登入資料。 -
選擇 User Pools (使用者集區)。
-
從清單中選擇現有的使用者集區,或建立使用者集區。
-
選擇社交和外部供應商選單。找到 Federated sign-in (聯合登入),然後選取 Add an identity provider (新增身分提供者)。
-
選擇 SAML 社交身分提供者。
-
輸入以逗號分隔的 Identifiers (識別符)。識別符告知 Amazon Cognito 應檢查使用者登入時輸入的電子郵件地址。然後,它會引導他們前往與其網域對應的供應商。
-
如果您希望 Amazon Cognito 在使用者登出時傳送已簽署的登出請求給您的供應商,則請選擇 Add sign-out flow (新增登出流程)。您必須設定 SAML 2.0 身分提供者,將登出回應傳送至設定受管登入時建立的
https://端點。<your Amazon Cognito domain>/saml2/logoutsaml2/logout端點使用 POST 繫結。注意
如果選取此選項,且您的 SAML 身分提供者預期有簽署的登出請求,您也需要使用 SAML IdP 設定 Amazon Cognito 提供的簽署憑證。
SAML IdP 會處理已簽署的登出請求,並將您的使用者從 Amazon Cognito 工作階段登出。
-
選擇 Metadata document source (中繼資料文件來源)。如果您的身分提供者以公有 URL 提供 SAML 中繼資料,則可以選擇 Metadata document URL (中繼資料文件 URL),然後輸入該公有 URL。否則,請選擇 Upload metadata document (上傳中繼資料文件),然後選取您先前從供應商處下載的中繼資料檔案。
注意
如果您的提供者有公有端點,而不是上傳檔案,建議您輸入中繼資料文件 URL。這可讓 Amazon Cognito 自動重新整理中繼資料。通常每 6 小時或是在中繼資料過期之前 (取較早的時間) 重新整理中繼資料。
-
選擇 Map attributes between your SAML provider and your app (在 SAML 供應商與應用程式之間映射屬性),將 SAML 供應商屬性映射至使用者集區中的使用者描述檔。在屬性映射中包含您的使用者集區必要屬性。
例如,當您選擇 User pool attribute (使用者集區屬性)
email時,隨著身分提供者 SAML 聲明中顯示的 SAML 屬性名稱輸入 SAML 屬性名稱。您的身分提供者可能會提供範例 SAML 聲明以供參考。有些身分供應商會使用簡單的名稱,例如email,而其他供應商則會使用 URL 格式的屬性名稱,例如下列範例:http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress -
選擇建立。