存取外部驗證的使用者 (身分聯合) - AWS 身分和存取權管理

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

存取外部驗證的使用者 (身分聯合)

您的使用者可能已在以外擁有身分識別 AWS,例如在您的公司目錄中。如果這些使用者需要使用 AWS 資源 (或使用存取這些資源的應用程式),那麼這些使用者也需要 AWS 安全性認證。您可以使用IAM角色來指定身分識別與組織或第三方身分識別提供者 (IdP) 聯合的使用者的權限。

注意

安全性最佳做法是,建議您使用身分聯盟在 IAMIdentity Center 中管理使用者存取,而不是建立使IAM用者。如需有關需要IAM使用者的特定情況的資訊,請參閱建立IAM使用者的時機 (而非角色)

使用 Amazon Cognito 聯合行動或以 Web 為基礎的應用程式的使用者

如果您建立可存取 AWS 資源的行動或網頁式應用程式,應用程式需要安全認證才能向其發出程式設計要 AWS求。對於大多數行動應用程式藍本,建議您使用 Amazon Cognito。您可以將此服務與 iOS AWS 行動版和 Android 版SDK行動版和 Fire OS 搭配使用,SDK為使用者建立唯一的身分,並對其進AWS 行驗證,以便安全存取您的 AWS 資源。Amazon Cognito 支援與下一個部分中列出的身分提供者相同的身分提供者,並且還支援開發人員驗證身分和未經身分驗證 (訪客) 的存取。Amazon Cognito 還提供同步使用者資料的API操作,以便在使用者在裝置之間移動時保留資料。如需詳細資訊,請參閱Amazon Cognito 動應用程式

使用公有身分服務提供者或 OpenID Connect 來聯合使用者

在可能的情況下,將 Amazon Cognito 用於行動和以 Web 為基礎的應用程式案例。Amazon Cognito 會為您完成大部分的 behind-the-scenes 工作與公有身分提供者服務。它適用於相同的第三方服務,並且還支援匿名登入。但是,對於更高級的情況,您可以直接使用第三方服務,例如使用亞馬遜,Facebook,谷歌登錄或與 OpenID Connect(OIDC)兼容的任何 IdP。如需使用其中一項服務使用OIDC同盟的詳細資訊,請參閱OIDC联邦

使用 2.0 聯合使用SAML者

如果您的組織已經使用支援 SAML 2.0 (安全性宣告標記語言 2.0) 的身分識別提供者軟體套件,您可以在您的組織之間建立信任,做為身分識別提供者 (IdP) 和 AWS 服務提供者。然後,您可以用SAML來為使用者提供通話作業的聯合單一登入 on (SSO) AWS Management Console 或聯合存取權。 AWS API例如,如果您的公司使用 Microsoft 作用中目錄和作用中目錄同盟服務,則您可以使用 SAML 2.0 進行聯合。如需使用 SAML 2.0 聯合使用者的詳細資訊,請參閱SAML联邦

透過建立自訂身分經紀人應用程式來聯合使用者

如果您的身分識別存放區與 SAML 2.0 不相容,則您可以建置自訂身分識別代理應用程式來執行類似的功能。Broker 應用程式會驗證使用者、要求使用者的臨時認證 AWS,然後將它們提供給使用者以存取 AWS 資源。

例如,Example Corp. 有許多員工需要執行存取公司 AWS 資源的內部應用程式。員工已經在公司身份和身份驗證系統中具有身份,並且 Example Corp. 不想為每個公司員工創建一個單獨的IAM用戶。

Bob 是範例公司的開發人員為了讓範例公司內部應用程式能夠存取公司的 AWS 資源,Bob 開發自訂的身分識別代理應用程式。應用程式會驗證員工是否已登入現有的範例公司身分識別與驗證系統 (可能會使用 LDAP Active Directory 或其他系統)。然後,身分經紀人應用程式取得員工的臨時安全憑證。此案例與前一個案例類似 (使用自訂驗證系統的行動應用程式),不同之處在於需要存取 AWS 資源的應用程式全部在企業網路中執行,而且公司擁有現有的驗證系統。

若要取得臨時安全憑證,身分經紀人應用程式將呼叫 AssumeRoleGetFederationToken 以取得臨時安全憑證,具體取決於 Bob 想要如何管理使用者政策以及臨時憑證何時過期。(如需有關這些API作業之間差異的詳細資訊,請參閱臨時安全登入資料 IAM臨時安全登入資料的權限。) 該調用返回由訪問密鑰 ID,秘密 AWS 訪問密鑰和會話令牌組成的臨時安全憑據。身分經紀人應用程式讓這些臨時安全憑證可供內部公司應用程式使用。然後,應用程式可以使用臨時憑證直接呼叫 AWS 。該應用程式快取憑證,直到過期,然後請求一組新的臨時憑證。下圖說明此情況。

使用自訂身分經紀人應用程式的範例工作流程

此案例具有以下屬性:

  • 身分識別代理應用程式具有存取權杖服務 (STS) IAM 的權限,API以建立臨時安全性憑證。

  • 身分經紀人應用程式能夠驗證員工是否在現有身分驗證系統中進行了身分驗證。

  • 使用者可以取URL得臨時存取 AWS 管理主控台 (稱為單一登入)。

如需建立臨時安全性憑證檔案的詳細資訊,請參閱 比較 AWS STS 認證。如需聯合身分使用者取得 AWS 管理主控台存取權的詳細資訊,請參閱啟用 SAML 2.0 聯合身分的使用者存取 AWS Management Console