臨時安全登入資料 IAM - AWS Identity and Access Management

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

臨時安全登入資料 IAM

您可以使用 AWS Security Token Service (AWS STS) 建立並為受信任的使用者提供臨時安全登入資料,以控制您的存取 AWS 的費用。暫時性安全憑證的作用幾乎與長期存取金鑰憑證完全相同,而其差異如下:

  • 暫時安全憑證是「短期」的,如其名稱所暗示。其可設定為在任何地方持續幾分鐘到幾小時不等。憑證過期後, AWS 不再識別它們或允許從與他們發出的API請求中進行任何類型的訪問。

  • 暫時性安全憑證不會與使用者一起儲存,但會動態產生並在請求時提供給使用者。當暫時性安全憑證到期時 (或者即使在此之前),使用者可以請求新的憑證,只要使用者的請求仍具有可這麼做的許可。

因此,相較於長期憑證,暫時性憑證具有下列優點:

  • 您不必長期分發或嵌入 AWS 應用程式的安全登入資料。

  • 您可以提供存取您的 AWS 資源給用戶,而無需定義 AWS 他們的身份。臨時認證是角色身份聯合的基礎。

  • 臨時安全憑證的存留期有限,因此當不再需要時,您不需要更新它們或明確予以撤銷。暫時性安全憑證到期之後,就無法重複使用。您可以指定憑證的有效期,達到最長限制。

AWS STS 以及 AWS 區域

臨時安全登入資料由 AWS STS。 默認情況下, AWS STS 是具有單一端點位於的全域服務https://sts.amazonaws.com。但是,您也可以選擇製作 AWS STS API呼叫任何其他支援區域中的端點。這可透過從地理位置較靠近您的區域的伺服器傳送請求,來降低延遲發生機率 (伺服器延遲)。無論您的憑證來自哪個區域,都能全域使用。如需詳細資訊,請參閱 Manage (管理) AWS STS 在一個 AWS 區域

暫時性憑證的常見案例

臨時認證在涉及身份聯合、委派、跨帳戶存取和IAM角色的案例中非常有用。

聯合身分

您可以在以外的外部系統中管理您的使用者身分 AWS 並授予從這些系統登入的使用者以執行 AWS 任務和訪問 AWS 的費用。IAM支援兩種類型的聯合身分識別。在這兩種情況下,身份都存儲在 AWS。 區別在於外部系統在您的資料中心或網路上的外部協力廠商的所在位置。若要比較聯合身分識別之臨時安全登入資料的功能,請參閱比較 AWS STS 認證

如需關於外部身分提供者的詳細資訊,請參閱身分提供者與聯合

  • OpenID Connect (OIDC) 聯盟 — 您可以讓使用者使用知名的第三方身分供應商登入,例如使用 Amazon、Facebook、Google 或任何與行動或 Web 應用程式相容的 OIDC 2.0 相容供應商登入,您不需要建立自訂的登入程式碼或管理您自己的使用者身分。使用OIDC同盟可協助您保持 AWS 帳戶 安全,因為您不需要將長期的安全性登入資料 (例如IAM使用者存取金鑰) 與應用程式一起散發。如需詳細資訊,請參閱OIDC联邦

    AWS STS OIDC聯邦支持使用亞馬遜,臉譜,谷歌和任何 OpenID Connect(OIDC)兼容的身份提供商登錄。

    注意

    對於行動應用程式,我們建議您使用 Amazon Cognito。您可以使用此服務 AWS SDKs讓行動裝置開發為使用者建立唯一的身分,並對其進行驗證,以便安全存取您的 AWS 的費用。Amazon Cognito 支援相同的身分供應商 AWS STS,並且還支援未驗證 (訪客) 存取,並可讓您在使用者登入時移轉使用者資料。Amazon Cognito 還提供同步使用者資料的API操作,以便在使用者在裝置之間移動時保留資料。如需詳細資訊,請參閱 Amplify 文件 中的 Amplify 身分驗證

  • SAML同盟 — 您可以驗證組織網路中的使用者,然後提供這些使用者存取 AWS 而不創建新的 AWS 他們的身份,並要求他們使用不同的登錄憑據登錄。這稱為暫時存取的單一登入方法。 AWS STS 支持開放標準,如安全斷言標記語言(SAML)2.0,與你可以使用 Microsoft AD FS 來利用你的 Microsoft 活動目錄。您也可以使用 SAML 2.0 來管理自己的聯合使用者身分識別解決方案。如需詳細資訊,請參閱SAML联邦

    • 自訂同盟代理人 — 您可以使用組織的驗證系統來授與存取權 AWS 的費用。如需範例案例,請參閱啟用自訂身分識別代理存取主 AWS 控台

    • 使用 SAML 2.0 的同盟 — 您可以使用組織的驗證系統,並SAML授與存取權 AWS 的費用。如需詳細資訊和範例案例,請參閱 SAML联邦

跨帳戶存取的角色

許多組織維護不止一個 AWS 帳戶。 使用角色和跨帳戶存取,您可以在一個帳戶中定義使用者身分,並使用這些身分識別來存取 AWS 屬於您組織的其他帳號中的資源。這就是所謂暫時存取的「委派」方法。如需有關建立跨帳戶角色的詳細資訊,請參閱 建立角色以將權限委派給IAM使用者。若要瞭解您信任區域之外的帳戶中的主體 (受信任的組織或帳戶) 是否有權承擔您的角色,請參閱什麼是 IAM Access Analyzer? 。

Amazon 的角色 EC2

如果您在 Amazon 執行個體上EC2執行應用程式,並且這些應用程式需要 AWS 資源時,您可以在啟動執行個體時提供臨時安全登入資料。這些暫時性安全憑證可供在執行個體上執行的所有應用程式使用,因此您不需要在執行個體上儲存任何長期憑證。如需詳細資訊,請參閱使用IAM角色將許可授與在 Amazon EC2 執行個體上執行的應用程式

若要進一步了解 IAM Amazon EC2 IAM角色登入資料,請參閱 Amazon 彈性運算雲端使用者指南EC2中的 Amazon 角色。

其他 AWS services

您可以使用臨時安全登入資料來存取大部分 AWS 服務。如需接受暫時性安全性憑證的服務的清單,請參閱AWS 使用 的服務 IAM

使用臨時憑證的應用程式範例

您可以使用... AWS Security Token Service (AWS STS) 建立並為受信任的使用者提供臨時安全登入資料,以控制您的存取 AWS 的費用。如需關於 AWS STS,請參閱臨時安全登入資料 IAM。查看如何使用 AWS STS 若要管理臨時安全登入資料,您可以下載下列實作完整範例案例的應用程式範例:

OIDC同盟的範例

以下示例應用程序說明如何OIDCfederation與提供商一起使用,例如使用亞馬遜,Amazon Cognito,Facebook 或谷歌登錄。您可以從這些提供商進行臨時交易身份驗證 AWS 要存取的安全憑證 AWS 服務。

  • 亞馬遜認知教程 — 我們建議您使用 Amazon Cognito AWS SDKs用於移動開發。Amazon Cognito 是進行行動應用程式身分管理的最便捷的方式,並提供了同步和跨裝置身分驗證等連接功能。如需有關 Amazon Cognito 的詳細資訊,請參閱 Amplify 文件 中的 Amplify 身分驗證

以下案例和應用程式可以指導您使用暫時性安全憑證:

如需政策和權限的詳細資訊,請參閱 AWS 請參閱下列主題: