Amazon DynamoDB
开发人员指南 (API Version 2012-08-10)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Amazon DynamoDB 的身份验证和访问控制

访问 Amazon DynamoDB 需要凭证。这些凭证必须有权访问 AWS 资源,如 Amazon DynamoDB table 或 Amazon Elastic Compute Cloud (Amazon EC2) 实例。下面几节提供详细的信息来说明如何使用 AWS Identity and Access Management (IAM) 和 DynamoDB 来帮助保护对您的资源的访问。

身份验证

您可以以下面任一类型的身份访问 AWS:

  • AWS 账户根用户 – 注册 AWS 时,您需要提供与您的 AWS 账户关联的电子邮件地址和密码。这就是您的 AWS 账户根用户。其凭证可为您提供访问您所有 AWS 资源的完整权限。

    重要

    出于安全考虑,我们建议您仅使用根用户创建管理员用户,此类用户是对您的 AWS 账户具有完全访问权限的 IAM 用户。然后,您可以使用此管理员用户来创建权限有限的其他 IAM 用户和角色。有关更多信息,请参阅 IAM 用户指南 中的 IAM 最佳实践创建管理员用户和组

  • IAM 用户IAM 用户就是您的 AWS 账户中的一种身份,它具有特定的自定义权限(例如,在 DynamoDB 中创建 a table 的权限)。您可以使用 IAM 用户名和密码来登录以保护 AWS 网页,如 AWS 管理控制台AWS 开发论坛AWS Support Center

     

    除了用户名和密码之外,您还可以为每个用户生成访问密钥。在通过多个软件开发工具包之一或使用 AWS Command Line Interface (CLI) 以编程方式访问 AWS 服务时,可以使用这些密钥。SDK 和 CLI 工具使用访问密钥对您的请求进行加密签名。如果您不使用 AWS 工具,则必须自行对请求签名。DynamoDB supports 签名版本 4,后者是一种用于对入站 API 请求进行身份验证的协议。有关验证请求的更多信息,请参阅 AWS General Reference 中的签名版本 4 签名流程

     

  • IAM 角色IAM 角色是可在账户中创建的另一种具有特定权限的 IAM 身份。它类似于 IAM 用户,但未与特定人员关联。利用 IAM 角色,您可以获得可用于访问 AWS 服务和资源的临时访问密钥。具有临时凭证的 IAM 角色在以下情况下很有用:

     

    • 联合身份用户访问 – 您可以不创建 IAM 用户,而是使用来自 AWS Directory Service、您的企业用户目录或 Web 身份提供商的既有用户身份。他们被称为联合身份用户。在通过身份提供商请求访问权限时,AWS 将为联合用户分配角色。有关联合身份用户的更多信息,请参阅 IAM 用户指南 中的联合身份用户和角色

       

    • 跨账户访问 – 可以使用您账户中的 IAM 角色向另一个 AWS 账户授予对您账户的资源的访问权限。有关示例,请参阅 IAM 用户指南 中的教程:使用 IAM 角色委派跨 AWS 账户的访问权限

       

    • AWS 服务访问 - 可以使用您账户中的 IAM 角色向 AWS 服务授予对您账户的资源的访问权。例如,您可以创建一个角色,此角色允许 Amazon Redshift 代表您访问 Amazon S3 存储桶,然后将该存储桶提供的数据加载到 Amazon Redshift 群集中。有关更多信息,请参阅 IAM 用户指南 中的创建向 AWS 服务委派权限的角色

       

    • 在Amazon EC2 上运行的应用程序 – 您可以使用 IAM 角色管理在 EC2 实例上运行的应用程序的临时凭证并发出 AWS API 请求。这优先于在 EC2 实例中存储访问密钥。要将 AWS 角色分配给 EC2 实例并使其对该实例的所有应用程序可用,您可以创建一个附加到实例的实例配置文件。实例配置文件包含角色,并使 EC2 实例上运行的程序能够获得临时凭证。有关更多信息,请参阅 IAM 用户指南 中的对 Amazon EC2 上的应用程序使用角色

访问控制

您可以使用有效的凭证来对自己的请求进行身份验证,但您还必须拥有权限才能创建或访问 Amazon DynamoDB 资源。例如,您必须拥有创建 Amazon DynamoDB table 的权限。

下面几节介绍如何管理 Amazon DynamoDB 的权限。我们建议您先阅读概述。

本页内容: