AWS Toolkit for Visual Studio
用户指南

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Identity and Access Management

AWS Identity and Access Management (IAM) 使您能够更安全地管理对您的 AWS 账户和资源的访问权限。利用 IAM,您可以在主()AWS 账户中创建多个用户。这些用户可以有自己的凭证:密码、访问密钥 ID 和私有密钥。但是,所有 IAM 用户都共享单个账号。

您可以通过将 IAM 策略附加到用户来管理每个 IAM 用户的资源访问级别。例如,您可以将策略附加到一个 IAM 用户,该用户提供了对您的账户中的 Amazon S3 服务和相关资源的访问权限,但未提供对任何其他服务或资源的访问权限。

如要实现更有效的访问管理,您可以创建 IAM 组,即若干用户的集合。当您将一个策略附加到组时,它将影响作为该组成员的所有用户。

除了在用户和组级别管理权限之外,IAM 还支持 IAM 角色的概念。与用户和组相似,您可以将策略附加到 IAM 角色。然后,您可以将 IAM 角色与 Amazon EC2 实例关联。在 EC2 实例上运行的应用程序能够使用 IAM 角色提供的权限访问 AWS。有关将 IAM 角色与 Toolkit 一起使用的更多信息,请参阅创建 IAM 角色。有关 IAM 的更多信息,请转到 IAM 用户指南

创建和配置 IAM 用户#

IAM 用户使您可以授予对 AWS 账户的其他访问权限。由于您能够将策略附加到 IAM 用户,因此您可以精确地限制 IAM 用户可访问的资源以及他们可对这些资源执行的操作。

作为最佳实践,访问 AWS 账户的所有用户都应像 IAM 用户一样执行此操作 - 甚至账户的所有者也是如此。这确保了在其中一个 IAM 用户的凭证泄露时只需停用这部分凭证。不需要停用或更改账户的根凭证。

在 Toolkit for Visual Studio 中,您可以将 IAM 策略附加到用户或将用户分配到组,由此向 IAM 用户分配权限。分配到某个组的 IAM 用户将从附加到该组的策略派生其权限。有关更多信息,请参阅创建 IAM 组将 IAM 用户添加到 IAM 组

在 Toolkit for Visual Studio 中,您还可以为 IAM 用户生成 AWS 凭证(访问密钥 ID 和私有密钥)。有关更多信息,请参阅为 IAM 用户生成凭证

_images/inline-refresh-button.png

Toolkit for Visual Studio 支持通过 AWS Explorer 指定用于访问服务的 IAM 用户凭证。由于 IAM 用户通常没有对所有 AWS 服务的完全访问权限,AWS Explorer 中的某些功能可能不可用。如果您在有效账户是 IAM 用户时使用 AWS Explorer 来更改资源,然后将有效账户切换为根账户,则在您刷新 AWS Explorer 中的视图之前,更改可能不可见。要刷新该视图,请选择刷新 () 按钮。

有关如何从 AWS 管理控制台配置 IAM 用户的信息,请转到 IAM 用户指南中的使用用户和组

创建 IAM 用户

  1. 在 AWS Explorer 中,展开 AWS Identity and Access Management 节点,打开 Users 的上下文(右键单击)菜单,然后选择 Create User

  2. Create User 对话框中,键入 IAM 用户的名称并选择 OK。这是 IAM 友好名称。有关 IAM 用户的名称限制的信息,请转到 IAM 用户指南

    _images/iam-user-create-dlg.png

    创建 IAM 用户

新用户将在 AWS Identity and Access Management 节点下的 Users 下显示为子节点。

有关如何创建策略并将其附加到用户的信息,请参阅创建 IAM 策略

创建 IAM 组#

组提供了一个将 IAM 策略应用于用户集合的方法。有关如何管理 IAM 用户和组的信息,请转到 IAM 用户指南中的使用用户和组

创建 IAM 组

  1. 在 AWS Explorer 中的 Identity and Access Management 下,打开 Groups 的上下文(右键单击)菜单,然后选择 Create Group

  2. Create Group 对话框中,键入 IAM 组的名称并选择 OK

    _images/iam-group-create-dlg.png

    创建 IAM 组

新 IAM 组将显示在 Identity and Access ManagementGroups 子节点下。

有关创建策略并将其附加到 IAM 组的信息,请参阅创建 IAM 策略

将 IAM 用户添加到 IAM 组#

作为 IAM 组的成员的 IAM 用户将从附加到该组的策略派生访问权限。IAM 组的用途是简化对一系列 IAM 用户的权限的管理。

有关附加到某个 IAM 组的策略如何与附加到作为该 IAM 组的成员的 IAM 用户的策略交互的信息,请转到 IAM 用户指南中的管理 IAM 策略

在 AWS Explorer 中,您从 Users 子节点(而非 Groups 子节点)向 IAM 组添加 IAM 用户。

将 IAM 用户添加到 IAM 组

  1. 在 AWS Explorer 中的 Identity and Access Management 下,打开 Users 的上下文(右键单击)菜单,然后选择 Edit

    _images/iam-group-assign.png

    将 IAM 用户分配到 IAM 组

  2. Groups 选项卡的左侧窗格显示了可用 IAM 组。右侧窗格显示了已包含指定 IAM 用户的组。

    要将 IAM 用户添加到某个组,请在左侧窗格中,选择该 IAM 组,然后选择 > 按钮。

    要从某个组中删除 IAM 用户,请在右侧窗格中,选择该 IAM 组,然后选择 < 按钮。

    要将 IAM 用户添加到所有 IAM 组,请选择 >> 按钮。同样,要从所有组中删除 IAM 用户,请选择 << 按钮。

    要选择多个组,请按顺序选择它们。您不需要按住 Ctrl 键。要从您的选项中清除某个组,只需再次选择它。

  3. 当您完成向 IAM 组分配 IAM 用户时,选择 Save

为 IAM 用户生成凭证#

利用 Toolkit for Visual Studio,您可以生成用于对 AWS 进行 API 调用的访问密钥 ID 和私有密钥。还可将这些密钥指定为通过 Toolkit 访问 AWS 服务。有关如何指定与 Toolkit 一起使用的凭证的更多信息,请参阅指定凭证。有关如何安全地处理凭证的更多信息,请参阅管理 AWS 访问密钥的最佳实践

Toolkit 无法用于为 IAM 用户生成密码。

为 IAM 用户生成凭证

  1. 在 AWS Explorer 中,打开 IAM 用户的上下文(右键单击)菜单,然后选择 Edit

    _images/iam-user-creds-list.png
  2. 要生成凭证,请在 Access Keys 选项卡上,选择 Create

    您只能为每个 IAM 用户生成两组凭证。如果您已经有两组凭证并需要再创建一组凭证,则必须删除现有的凭证组之一。

    _images/iam-user-creds-create.png

    为 IAM 用户创建凭证

    如果您希望 Toolkit 将您的秘密访问密钥的加密副本保存到本地硬盘,请选择 Save the secret access key locally。AWS only returns the secret access key when created。您还可以从该对话框中复制秘密访问密钥并将其保存在安全的位置。

  3. 选择 OK

生成凭证后,您可以从 Access Keys 选项卡查看它们。如果您选择了让 Toolkit 本地保存私有密钥的选项,该密钥将显示在此处。

_images/iam-user-show-creds.png

为 IAM 用户创建凭证

如果您自行保存了私有密钥并且希望 Toolkit 保存它,请在 Secret Access Key 框中,键入秘密访问密钥,然后选择 Save the secret access key locally

要停用凭证,请选择 Make Inactive。(如果您怀疑凭证已泄露,则可能会这样做。如果您得到“凭证是安全的”的保证,则可以重新激活它们。)

创建 IAM 角色#

Toolkit for Visual Studio 支持 IAM 角色的创建和配置。和使用用户和组一样,您可以将策略附加到 IAM 角色。然后,您可以将 IAM 角色与 Amazon EC2 实例关联。与 EC2 实例的关联通过实例配置文件 来处理,后者是角色的逻辑容器。在 EC2 实例上运行的应用程序将自动获得由与 IAM 角色关联的策略指定的访问级别。即使在应用程序尚未指定其他 AWS 凭证时也是如此。

例如,您可以创建角色并将只允许访问 Amazon S3 的策略附加到该角色。将此角色与 EC2 实例关联,随后您可以在该实例上运行一个应用程序,该应用程序将能够访问 Amazon S3,但无法访问任何其他服务或资源。此方法的优点是您不需要关注是否能在 EC2 实例上安全地传输和存储 AWS 凭证。

有关 IAM 角色的更多信息,请转到 IAM 用户指南中的使用 IAM 角色。有关使用与 Amazon EC2 实例关联的 IAM 角色访问 AWS 的程序的示例,请转到适用于 Java.NETPHPRuby 的 AWS 开发人员指南。

创建 IAM 角色

  1. 在 AWS Explorer 中的 Identity and Access Management 下,打开 Roles 的上下文(右键单击)菜单,然后选择 Create Roles

  2. Create Role 对话框中,键入 IAM 角色的名称并选择 OK

    _images/iam-role-create-dlg.png

    创建 IAM 角色

新 IAM 角色将显示在 Identity and Access Management 中的 Roles 下方。

有关如何创建策略并将其附加到角色的信息,请参阅创建 IAM 策略

创建 IAM 策略#

策略是 IAM 的基础。策略可与 IAM 实体(如用户、组或角色)关联。策略指定为用户、组或角色启用的访问级别。

创建 IAM 策略

在 AWS Explorer 中,展开 AWS Identity and Access Management 节点,然后将实体的类型(GroupsRolesUsers)对应的节点展开到要将策略附加到的节点。例如,打开 IAM 角色的上下文菜单并选择 Edit

与该角色关联的选项卡将显示在 AWS Explorer 中。选择 Add Policy 链接。

New Policy Name 对话框中,键入策略的名称(例如,s3-access)。

_images/iam-policy-create-dlg.png

“New Policy Name”对话框

在策略编辑器中,添加策略声明以指定要提供给角色的访问级别(本示例中为与策略关联的 winapp-instance-role-2)。在本示例中,策略提供了对 Amazon S3 的完全访问权限,但未提供对任何其他资源的访问权限。

_images/iam-policy-specify.png

指定 IAM 策略

若要获得更精确的访问控制,您可以在策略编辑器中展开子节点以允许或拒绝与 AWS 服务关联的操作。

当您编辑完策略时,请选择 Save 链接。