身分提供者與聯合 - AWS Identity and Access Management

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

身分提供者與聯合

最佳做法是,建議您要求人類使用者與身分識別IAM提供者使用同盟來存取 AWS 資源,而不是在您的 AWS 帳戶. 透過身分識別提供者 (IdP),您可以管理以外的使用者身分識別, AWS 並授與這些外部使用者身分識別權限,以便使用您帳戶中的 AWS 資源。如果您的組織已有自己的身分系統,例如公司使用者目錄,這個方式便很管用。如果您要建立需要存取 AWS 資源的行動應用程式或 Web 應用程式,這也很有用。

注意

您也可以使用外部SAML身分識別提供者在 IAMIdentity Center 中管理人類使用者,而不是在中使用同SAML盟IAM。IAMIdentity Center 與身分識別提供者建立聯合,可讓您讓使用者存取組織中的多個 AWS 帳戶以及多個 AWS 應用程式。如需有關需要IAM使用者的特定情況的資訊,請參閱建立IAM使用者的時機 (而非角色)

如果您偏好在未啟用IAM身分識別中心的情況下使用單一 AWS 帳戶,您可以IAM搭配提供身分資訊的外部 IdP 使用,以便 AWS 使用 OpenID Connect (OIDC)SAML2.0 (安全性宣告標記語言 2.0)。OIDC將未執行的應用程式 (例如 GitHub Actions) 連線 AWS 至 AWS 資源。眾所周知的SAML身分識別提供者的範例是 Shibboleth 和使用中目錄同盟服務。

當您使用 身分提供者時,您不需要建立自訂登入代碼或管理自己的使用者身分,IdP 會為您處理這些工作。IdP 會為您提供這些功能。您的外部使用者透過 IdP 登入,您可以授與這些外部身分識別權限,以便使用您帳戶中的 AWS 資源。身分識別提供者可協助保 AWS 帳戶 護您的安全,因為您不需要在應用程式中散佈或內嵌長期安全性登入資料,例如存取金鑰。

請檢閱下表IAM,以協助判斷哪種IAM聯合類型最適合您的使用案例;IAM身分識別中心或 Amazon Cognito。下列摘要與表格提供使用者可用來取得資源聯合存取權的方法概觀。 AWS

IAM同盟類型 Account type (帳戶類型) 存取管理… 支援的身分來源

與IAM身分識別中心聯盟

由多個帳戶管理 AWS Organizations

員工的人類使用者

  • SAML2.0

  • 受管的 Active Directory

  • Identity Center 目錄

聯邦與 IAM

單一獨立帳戶

  • 短期、小規模部署中的人類使用者

  • 電腦使用者

  • SAML2.0

  • OIDC

使用 Amazon Cognito 身分池的聯合

任何

需要IAM授權才能存取資源的應用程式使用者

  • SAML2.0

  • OIDC

  • 選擇 OAuth 2.0 社交身份提供商

與IAM身分識別中心聯盟

對於人類使用者的集中式存取管理,我們建議您使用 IAMIdentity Center 來管理帳戶的存取和這些帳戶內的權限。IAM身分識別中心中的使用者會獲得 AWS 資源的短期認證。您可以使用 Active Directory、外部身分識別提供者 (IdP) 或IAM身分識別中心目錄做為使用者和群組指派 AWS 資源存取權的身分識別來源。

IAMIdentity Center 支援身分識別與 SAML (安全性宣告標記語言) 2.0 聯合,以便為獲授權可在存取入口網站中使用應用程式的使用者提供聯合單一登入 AWS 存取權。然後,使用者可以單一登入到支援的服務SAML,包括 AWS Management Console 和協力廠商應用程式,例如 Microsoft 365、SAP Concur 和 Salesforce。

聯邦與 IAM

雖然我們強烈建議您在 IAM Identity Center 中管理人類使用者,但您可以在短期、小規模部署中IAM為人類使用者啟用聯合使用者存取權。IAM可讓您使用個別的 SAML 2.0 和 Open ID Connect (OIDC), IdPs 並使用聯合使用者屬性進行存取控制。使用時IAM,您可以將使用者屬性 (例如成本中心、標題或地區設定) 從傳送 IdPs 到 AWS,並根據這些屬性實作精細的存取權限。

工作負載是可提供商業價值的資源和程式碼的集合,例如應用程式或後端程序。您的工作負載可能需要IAM身分識別,才能對 AWS 服務、應用程式、作業工具和元件提出要求。這些身分包括在您的 AWS 環境中執行的機器,例如 Amazon EC2 執行個體或 AWS Lambda 功能。

您可以管理需要存取權的外部當事人的機器身分。若要授與機器身分識別的存取權,您可以使用IAM角色。IAM角色具有特定權限,並提供 AWS 依賴具有角色工作階段的臨時安全性認證來存取的方式。此外,您可能有其他電腦需 AWS 要存取您的 AWS 環境。對於在您以外執行的電腦,可 AWS 以使用任何地方的IAM角色。如需角色的詳細資訊,請參閱IAM角色。如需如何使用角色委派存取權的詳細資訊 AWS 帳戶,請參閱IAM教學課程:委派存取 AWS 使用IAM角色的帳號

若要直接將 IdP 連結至IAM,您需要建立身分識別提供者實體,以在您 AWS 帳戶 與 IdP 之間建立信任關係。IAM與 OpenID Connect(OIDC)或 SAML 2.0(安全斷言標記語言 2.0)兼容的支持 IdPs 。如需搭配使用其中一個 IdPs 搭配使用的詳細資訊 AWS,請參閱下列各節:

使用 Amazon Cognito 身分池的聯合

Amazon Cognito 專為想要在行動應用程式和 Web 應用程式中為使用者進行驗證和授權的開發人員而設計。Amazon Cognito 使用者集區會將登入和註冊功能新增至您的應用程式,而身分集區則提供IAM登入資料,讓您的使用者可以存取您管理的受保護資源。 AWS識別集區會透過作業取得暫時工AssumeRoleWithWebIdentityAPI作階段的認證。

Amazon Cognito 與支持 SAML OpenID Connect 的外部身份提供商以及 Facebook,谷歌和 Amazon 等社交身份提供商合作。您的應用程式可以使用使用者集區或外部 IdP 登入使用者,然後透過IAM角色中的自訂臨時工作階段代表使用者擷取資源。

其他資源