

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

# IAM 中的暫時安全憑證
<a name="id_credentials_temp"></a>

您可以使用 AWS Security Token Service (AWS STS) 來建立和提供信任的使用者暫時安全登入資料，以控制對 AWS 資源的存取。暫時性安全憑證的作用幾乎與長期存取金鑰憑證完全相同，而其差異如下：
+ 暫時安全憑證是「短期」**的，如其名稱所暗示。其可設定為在任何地方持續幾分鐘到幾小時不等。登入資料過期後， AWS 就無法再辨識這些登入資料，也無法允許從使用它們提出的 API 請求進行任何類型的存取。
+ 暫時性安全憑證不會與使用者一起儲存，但會動態產生並在請求時提供給使用者。當暫時性安全憑證到期時 (或者即使在此之前)，使用者可以請求新的憑證，只要使用者的請求仍具有可這麼做的許可。

因此，相較於長期憑證，暫時性憑證具有下列優點：
+ 您不需要向應用程式分發或嵌入長期 AWS 安全登入資料。
+ 您可以為使用者提供 AWS 資源的存取權，而不必為其定義 AWS 身分。臨時憑證是[角色](id_roles.md)和[聯合身分](id_roles_providers.md)的基礎。
+ 臨時安全憑證的存留期有限，因此當不再需要時，您不需要更新它們或明確予以撤銷。暫時性安全憑證到期之後，就無法重複使用。您可以指定憑證的有效期，達到最長限制。

## AWS STS 和 AWS 區域
<a name="sts-regionalization"></a>

 AWS STS所產生暫時性安全憑證。根據預設， AWS STS 是位於 的單一端點的全域服務`https://sts.amazonaws.com`。不過，您也可以選擇對任何其他支援區域中的端點進行 AWS STS API 呼叫。這可透過從地理位置較靠近您的區域的伺服器傳送請求，來降低延遲發生機率 (伺服器延遲)。無論您的憑證來自哪個區域，都能全域使用。如需詳細資訊，請參閱 [在 AWS STS 中管理 AWS 區域](id_credentials_temp_enable-regions.md)。

## 暫時性憑證的常見案例
<a name="sts-introduction"></a>

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

### 聯合身分
<a name="id-federation"></a>

您可以在 外部的外部系統中管理您的使用者身分， AWS 並授予從這些系統登入的使用者執行 AWS 任務和存取 資源 AWS 的存取權。IAM 支援兩種類型的聯合身分。在這兩種情況下，身分都會存放在 外部 AWS。差別是外部系統所在地點是您的資料中心或外部第三方的 Web 上。若要比較聯合身分的臨時安全憑證的功能，請參閱[比較 AWS STS 登入資料](id_credentials_sts-comparison.md)。

如需關於外部身分提供者的詳細資訊，請參閱[身分提供者和聯合身分 AWS](id_roles_providers.md)。
+ **OpenID Connect (OIDC) 聯合** – 您可以讓使用者使用知名的第三方身分提供者登入，例如 Login with Amazon、Facebook、Google 或任何與 OIDC 相容的提供者。對於您的行動或 Web 應用程式，您不需要建立自訂登入碼或管理自己的使用者身分。使用 OIDC 聯合可協助您保持 AWS 帳戶 安全，因為您不必將 IAM 使用者存取金鑰等長期安全登入資料與您的應用程式一起分發。如需詳細資訊，請參閱[OIDC 聯合身分](id_roles_providers_oidc.md)。

  AWS STS OIDC 聯合支援 Login with Amazon、Facebook、Google 和任何與 OpenID Connect (OIDC) 相容的身分提供者。
**注意**  
對於行動應用程式，我們建議您使用 Amazon Cognito。您可以使用此服務搭配 AWS SDKs進行行動開發，為使用者建立唯一身分，並對其進行驗證，以安全地存取您的 AWS 資源。Amazon Cognito 支援與 相同的身分提供者 AWS STS，也支援未經驗證的 （訪客） 存取，並可讓您在使用者登入時遷移使用者資料。Amazon Cognito 還提供 API 操作以同步使用者資料，如此可在使用者於不同裝置之間移動時進行保留。如需詳細資訊，請參閱 *Amplify 文件* 中的 [Amplify 身分驗證](https://docs.amplify.aws/lib/auth/getting-started/q/platform/js/#authentication-with-amplify)。
+ **SAML 聯合** – 您可以對組織網路中的使用者進行身分驗證，然後為這些使用者提供 的存取權， AWS 而無需為其建立新的 AWS 身分，並要求他們使用不同的登入憑證登入。這稱為臨時存取的*單一登入*方法。 AWS STS 支援開放標準，例如安全性聲明標記語言 (SAML) 2.0，您可以使用 Microsoft AD FS 來利用您的 Microsoft Active Directory。您也可以使用 SAML 2.0 來管理您自己的聯合使用者身分的解決方案。如需詳細資訊，請參閱[SAML 2.0 聯合身分](id_roles_providers_saml.md)。
  + **自訂聯合代理程式** – 您可以使用組織的身分驗證系統來授予 AWS 資源的存取權。如需範例案例，請參閱[啟用 AWS 主控台的自訂身分代理程式存取](id_roles_providers_enable-console-custom-url.md)。
  + **使用 SAML 2.0 的聯合** – 您可以使用您組織的身分驗證系統和 SAML，來授予 AWS 資源的存取。如需詳細資訊和範例案例，請參閱 [SAML 2.0 聯合身分](id_roles_providers_saml.md)。

### 跨帳戶存取的角色
<a name="role_cross-account"></a>

許多組織維護多個 AWS 帳戶。您可以使用角色和跨帳戶存取，來定義一個帳戶中的使用者身分，並使用那些身分來存取屬於您組織的其他帳戶中的 AWS 資源。這就是所謂暫時存取的「委派」**方法。如需有關建立跨帳戶角色的詳細資訊，請參閱 [建立角色以將許可授予 IAM 使用者](id_roles_create_for-user.md)。若要了解在您信任區域 (受信任組織或帳戶) 外帳戶中的主體是否具有擔任您角色的許可，請參閱[什麼是 IAM Access Analyzer？](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html)。

### Amazon EC2 的角色
<a name="role_ec2"></a>

如果您在 Amazon EC2 執行個體上執行應用程式，並且那些應用程式需要存取 AWS 資源，則您可以在您啟動它們時提供暫時安全憑證。這些暫時性安全憑證可供在執行個體上執行的所有應用程式使用，因此您不需要在執行個體上儲存任何長期憑證。如需詳細資訊，請參閱[使用 IAM 角色為在 Amazon EC2 執行個體上執行的應用程式授予許可](id_roles_use_switch-role-ec2.md)。

若要進一步了解 IAM Amazon EC2 角色憑證，請參閱 *Amazon Elastic Compute Cloud User Guide* 中的 [IAM roles for Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html)。

### AWS 其他服務
<a name="other-services"></a>

您可以使用臨時安全登入資料來存取大多數 AWS 服務。如需接受暫時性安全性憑證的服務的清單，請參閱[AWS 使用 IAM 的 服務](reference_aws-services-that-work-with-iam.md)。

## 使用臨時憑證的應用程式範例
<a name="id_credentials_temp_sample-apps"></a>

您可以使用 AWS Security Token Service (AWS STS) 來建立信任的使用者，並提供暫時安全登入資料，以控制對 AWS 資源的存取。如需 的詳細資訊 AWS STS，請參閱 [IAM 中的暫時安全憑證](#id_credentials_temp)。若要了解如何使用 AWS STS 來管理臨時安全登入資料，您可以下載下列範例應用程式，以實作完整的範例案例：
+ [AWS 使用 Windows Active Directory、ADFS 和 SAML 2.0 將聯合啟用至 ](https://aws.amazon.com/blogs/security/enabling-federation-to-aws-using-windows-active-directory-adfs-and-saml-2-0/)。示範如何使用企業聯合將存取權委派給 AWS 使用 Windows Active Directory (AD)、Active Directory Federation Services (ADFS) 2.0 和 SAML （安全性聲明標記語言） 2.0 的 。
+ [啟用 AWS 主控台的自訂身分代理程式存取](id_roles_providers_enable-console-custom-url.md)。示範如何建立啟用單一登入 (SSO) 的自訂聯合代理程式，使現有 Active Directory 使用者能夠登入  AWS 管理主控台。
+ [如何使用 Shibboleth 進行 的單一登入 AWS 管理主控台。](https://aws.amazon.com/blogs/security/how-to-use-shibboleth-for-single-sign-on-to-the-aws-management-console/)示範如何使用 [Shibboleth](http://shibboleth.net/) 與 [SAML](id_roles_providers_saml.md) 來提供使用者存取 AWS 管理主控台的單一登入 (SSO) 許可。

### OIDC 聯合身分的範例
<a name="sts-sample-apps-wif"></a>

下列範例應用程式說明如何搭配 Login with Amazon、Amazon Cognito、Facebook 或 Google 等供應商使用 OIDC 聯合。您可以從這些供應商交易身分驗證，以取得臨時 AWS 安全登入資料以存取 AWS 服務。
+ [Amazon Cognito 教學](https://docs.aws.amazon.com/cognito/latest/developerguide/tutorials.html)課程 – 我們建議您使用 Amazon Cognito 搭配 AWS SDKs進行行動開發。Amazon Cognito 是進行行動應用程式身分管理的最便捷的方式，並提供了同步和跨裝置身分驗證等連接功能。如需有關 Amazon Cognito 的詳細資訊，請參閱 *Amplify 文件* 中的 [Amplify 身分驗證](https://docs.amplify.aws/lib/auth/getting-started/q/platform/js/#authentication-with-amplify)。

## 暫時性安全憑證的其他資源。
<a name="id_credentials_temp_related-topics"></a>

以下案例和應用程式可以指導您使用暫時性安全憑證：
+ [如何將 AWS STS SourceIdentity 與您的身分提供者整合](https://aws.amazon.com/blogs/security/how-to-integrate-aws-sts-sourceidentity-with-your-identity-provider/)。此文章說明如何在使用 AWS STS `SourceIdentity` Okta、Ping 或 OneLogin 做為 IdP 時設定 屬性。
+  [OIDC 聯合身分](id_roles_providers_oidc.md)。本節討論如何在使用 OIDC 聯合身分和 `AssumeRoleWithWebIdentity` API 時設定 IAM 角色。
+ [透過 MFA 實現安全的 API 存取](id_credentials_mfa_configure-api-require.md). 本主題說明如何使用角色來要求多重要素驗證 (MFA) 以保護您的帳戶中的敏感 API 動作。

如需 中政策和許可的詳細資訊， AWS 請參閱下列主題：
+ [AWS 資源的存取管理](access.md)
+ [政策評估邏輯](reference_policies_evaluation-logic.md).
+ *Amazon Simple Storage Service 使用者指南*中的[管理 Amazon S3 資源的存取許可](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html)。
+  若要了解在您信任區域 (受信任組織或帳戶) 外帳戶中的主體是否具有擔任您角色的許可，請參閱[什麼是 IAM Access Analyzer？](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html)。