身份验证和访问 - Amazon SDKs和工具
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

身份验证和访问

使用开发 Amazon 时,您必须确定您的代码是如何进行身份验证的。 Amazon Web Services 服务您可以通过不同的方式配置对 Amazon 资源的编程访问权限,具体取决于环境和可用的 Amazon 访问权限。

本地(不在 Amazon中)运行的代码的身份验证选项

  • IAM您的SDK或工具的身份中心身份验证— 作为安全最佳实践,我们建议 Amazon Organizations 与 Ident IAM ity Center 配合使用来管理所有人的访问权限 Amazon Web Services 账户。你可以在中创建用户 Amazon IAM Identity Center,使用 Microsoft Active Directory,使用 SAML 2.0 身份提供商 (IdP),或者将你的 IdP 单独联合到其中。 Amazon Web Services 账户要查看您的地区是否支持 Ident IAM ity Center,请参阅中的Amazon IAM Identity Center 终端节点和配额Amazon Web Services 一般参考

  • IAM Roles Anywhere— 您可以使用 Ro IAM les Anywhere IAM 为在外部运行的服务器、容器和应用程序等工作负载获取临时安全证书 Amazon。要在任何地方使用IAM角色,您的工作负载必须使用 X.509 证书。

  • 扮演一个拥有 Amazon 证书的角色— 您可以扮IAM演一个角色来临时访问原本可能无法访问的 Amazon 资源。

  • Amazon 访问密钥— 其他可能不太方便或可能增加 Amazon 资源安全风险的选项。

在 Amazon 环境中运行的代码的身份验证选项

如果您的代码在上运行 Amazon,则证书可以自动提供给您的应用程序。例如,如果您的应用程序托管在 Amazon Elastic Compute Cloud 上,并且存在与该资源关联的IAM角色,则证书将自动提供给您的应用程序。同样,如果您使用 Amazon ECS 或 Amazon EKS 容器,则可以通过容器内运行的代码通过凭证提供者链自动获取为该IAM角色设置SDK的证书。

  • 为 Amazon EC2 实例使用IAM角色— 使用IAM角色在 Amazon EC2 实例上安全运行您的应用程序。

  • 您可以通过以下方式 Amazon 使用IAM身份中心进行编程交互:

通过基于 Web 的身份提供者进行身份验证 - 移动或基于客户端的 Web 应用程序

如果您正在创建需要访问的移动应用程序或基于客户端的 Web 应用程序 Amazon,请构建您的应用程序,使其能够使用 Web 联合身份验证动态请求临时 Amazon 安全证书。

利用 Web 联合身份验证,您不需要创建自定义登录代码或管理自己的用户身份。相反,应用程序用户可以使用知名的外部身份提供商 (IdP) 登录,例如 Login with Amazon、Facebook、Google 或任何其他兼容 OpenID Connect () OIDC 的 IdP。他们可以接收身份验证令牌,然后将该令牌交换为 Amazon 该映射中的临时安全证书,并分配给有权使用您的资源的IAM角色 Amazon Web Services 账户。

要了解如何为您的SDK或工具进行配置,请参阅扮演具有网络身份或 OpenID Connect 的角色

有关移动应用程序,请考虑使用 Amazon Cognito。Amazon Cognito 充当身份凭证代理程序并为您完成许多联合身份验证工作。有关更多信息,请参阅IAM用户指南中的将 Amazon Cognito 用于移动应用程序

有关访问管理的更多信息

IAM用户指南》包含以下有关安全控制 Amazon 资源访问的信息:

Amazon Web Services 一般参考 具有以下基础知识:

Amazon 构建者 ID

任何 Amazon Web Services 账户 你可能已经拥有或想要创作的 Amazon 构建者 ID 补充。虽然 Amazon Web Services 账户 充当你创建的 Amazon 资源的容器并为这些资源提供安全边界,但你的 Amazon 构建者 ID 代表你是一个个体。您可以使用登录 Amazon 构建者 ID 以访问开发者工具和服务,例如亚马逊 CodeWhisperer 和亚马逊 CodeCatalyst。