IAM 管理方法 - Amazon Identity and Access Management
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

IAM 管理方法

您可以使用 Amazon 控制台、Amazon 命令行界面,或在相关 SDK 中通过应用程序接口(API)来管理 IAM。在进行设置时,请考虑要支持哪些方法以及计划如何支持不同的用户。

Amazon 控制台

Amazon 管理控制台是一款 Web 应用程序,其中包含并引用了多种用于管理 Amazon 资源的服务控制台。首次登录时,您会看到控制台主页。通过控制台主页可以访问各个服务控制台,此外还可以一站式访问执行 Amazon 相关任务所需的信息。登录控制台后可以使用哪些服务和应用程序,取决于您有权访问哪些 Amazon 资源。您可以通过代入角色、成为已获得相关权限的组成员或获得显式授权来获得资源权限。对于独立 Amazon 账户,根用户或 IAM 管理员负责配置对资源的访问权限。对于 Amazon Organizations,管理账户或委托管理员负责配置对资源的访问权限。

如果您计划让人使用 Amazon 管理控制台来管理 Amazon 资源,我们建议您为用户配置临时凭证,以遵循 最佳安全实践。代入角色的 IAM 用户、联合用户和 IAM Identity Center 中的用户拥有临时凭证,而 IAM 用户和根用户拥有长期凭证。根用户凭证提供对 Amazon Web Services 账户的完全访问权限,而其他用户拥有的凭证提供对 IAM policy 授权的资源的访问权限。

不同类型的 Amazon Web Services Management Console 用户会有不同的登录体验。

  • IAM 用户和根用户通过 Amazon 主登录 URL(https://signin.aws.amazon.com)登录。登录之后,这些用户可以访问账户中已获得权限的资源。

    您必须使用根用户电子邮件地址和密码才能以根用户身份登录。

    您必须拥有 Amazon Web Services 账户 号码或别名、IAM 用户名和 IAM 用户密码才能以 IAM 用户身份登录。

    我们建议您仅在需要长期凭证的特定情况(例如用于紧急访问)下使用账户中的 IAM 用户,并且仅将根用户用于 需要根用户凭证的任务

    为方便起见,Amazon 登录页面使用浏览器 Cookie 记住 IAM 用户名和账户信息。下次用户转到 Amazon Web Services Management Console 中的任何页面时,控制台会使用 cookie 将用户重定向到账户登录页面。

    完成会话后应退出控制台,以防止之前的登录信息被重复使用。

  • IAM Identity Center 用户使用其组织特有的特定 Amazon 访问门户登录。登录后,这些用户可以选择要访问的账户或应用程序。如果选择访问某个账户,则可以选择要在管理会话中使用的权限集。

  • 在与 Amazon Web Services 账户关联的外部身份提供商中管理的联合用户使用自定义企业访问门户登录。联合用户可用的 Amazon 资源取决于其组织选择的策略。

注意

可以要求根用户、IAM 用户和 IAM Identity Center 中的用户通过 Amazon 的多重身份验证(MFA)验证身份后才能获得对 Amazon 资源的访问权限,从而增强安全性。启用 MFA 后,您还必须有权访问 MFA 设备才能登录。

要详细了解不同用户如何登录管理控制台,请参阅《Amazon 登录用户指南》中的 登录 Amazon 管理控制台

Amazon 命令行界面(CLI)和软件开发工具包(SDK)

IAM Identity Center 和 IAM 用户在通过 CLI 或相关 SDK 中的应用程序编程接口(API)进行身份验证时,将使用不同的方法来验证其凭证。

凭证和配置设置位于不同位置(例如,系统或用户环境变量、本地 Amazon 配置文件)或在命令行上显式声明为参数。某些位置优先于其他位置。

IAM Identity Center 和 IAM 都提供了可用于 CLI 或 SDK 的访问密钥。IAM Identity Center 访问密钥是可以自动刷新的临时凭证,建议优先使用这种访问密钥,而不是与 IAM 用户关联的长期访问密钥。

要使用 CLI 或 SDK 来管理 Amazon Web Services 账户,您可以在浏览器中使用 Amazon CloudShell。如果您使用 CloudShell 来运行 CLI 或 SDK 命令,则必须首先登录控制台。访问 Amazon 资源的权限取决于您登录控制台时使用的凭证。根据您的经验,您可能会发现使用 CLI 来管理 Amazon Web Services 账户 更高效。

对于应用程序开发,您可以将 CLI 或 SDK 下载到您的计算机上,然后从命令提示符或 Docker 窗口登录。在这种情况下,您可以在 CLI 脚本或 SDK 应用程序中配置身份验证和访问凭证。您可以通过不同的方式配置对资源的编程访问权限,具体取决于环境和可用的访问权限。

  • 使用 Amazon 服务进行本地代码身份验证时,推荐的方法是使用 IAM Identity Center 和IAM Roles Anywhere

  • 对 Amazon 环境中运行的代码,推荐的身份验证方法是使用 IAM 角色或使用 IAM Identity Center 凭证。

如果您使用的是 IAM Identity Center,则可以从您选择权限集的 Amazon 访问门户起始页获取短期凭证。这些凭证有明确的有效期,不会自动刷新。如果要使用此类凭证,请在登录 Amazon 门户后,选择 Amazon Web Services 账户,然后选择该权限集。选择命令行或编程访问权限以查看可用于以编程方式或通过 CLI 访问 Amazon 资源的选项。有关这些方法的更多信息,请参阅《IAM Identity Center 用户指南》的 获取和刷新临时凭证。这些凭证通常在应用程序开发期间用于快速测试代码。

我们建议在自动化访问您的 Amazon 资源时使用会自动刷新的 IAM Identity Center 凭证。如果您已在 IAM Identity Center 中配置了用户和权限集,则可以使用 aws configure sso 命令来使用命令行向导,这将有助于识别可供您使用的凭证并将其存储在配置文件中。有关配置文件配置的更多信息,请参阅《Amazon 命令行界面版本 2 用户指南》中的 使用 aws configure sso 向导配置您的配置文件

注意

许多示例应用程序使用与 IAM 用户或根用户关联的长期访问密钥。在试用学习时,您只应在沙盒环境中使用长期凭证。查看 长期访问密钥的替代方案,并计划尽快将代码过渡到使用替代凭证,例如 IAM Identity Center 凭证或 IAM 角色。转换代码后,请删除访问密钥。

要了解有关配置 CLI 的更多信息,请参阅《Amazon 命令行界面版本 2 用户指南》中的 安装或更新最新版本的 Amazon CLI,以及《Amazon 命令行界面用户指南》中的 身份验证和访问凭证

要了解有关配置 SDK 的更多信息,请参阅《Amazon SDK 和工具参考指南》中的 IAM Identity Center 身份验证,以及《Amazon SDK 和工具参考指南》中的 IAM Roles Anywhere