授予 AWS OpsWorks Stacks 用户每堆栈权限 - AWS OpsWorks

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

授予 AWS OpsWorks Stacks 用户每堆栈权限

重要

AWS OpsWorks Stacks 不再接受新客户。在 2024 年 5 月 26 日之前,现有客户将能够照常使用 OpsWorks 控制台、API、CLI 和 CloudFormation 资源,届时这些工具或资源将停用。为准备此过渡,我们建议您尽快将堆栈过渡到AWS Systems Manager。有关更多信息,请参阅 AWS OpsWorks Stacks 生命周期终止常见问题解答将 AWS OpsWorks Stacks 应用程序迁移到 AWS Systems Manager Application Manager

管理 AWS OpsWorks Stacks 用户权限的最简单方法是使用堆栈的 Permissions (权限) 页面。每个堆栈均有其自己的页面,该页面可授予针对该堆栈的权限。

您必须以管理员用户或者 Manage 用户的身份登录,才能修改任何权限设置。列表仅显示已导入到 AWS OpsWorks Stacks 的用户。有关如何创建和导入用户的信息,请参阅管理用户

默认权限级别为“IAM Policies Only”,该级别仅向用户授予其附加 IAM policy 中的那些权限。

  • 当您从 IAM; 或另一个区域导入用户时,将使用 IAM Policies Only 权限级别将用户添加到所有现有堆栈的列表中。

  • 默认情况下,您刚从其他区域导入的用户无法访问目标区域中的堆栈。如果从其他区域导入用户,要让他们管理目标区域中的堆栈,则在导入用户之后,必须为这些堆栈分配权限。

  • 当您创建新堆栈时,会使用 IAM Policies Only 权限级别将所有当前用户添加到列表中。

设置用户的权限

设置用户的权限
  1. 在导航窗格中,选择 Permissions (权限)

  2. Permissions (权限) 页面上,选择 Edit (编辑)

  3. 更改 Permission level (权限级别)Instance access (实例访问) 设置:

    • 使用 Permissions level 设置为每个用户分配其中一个标准权限级别,从而确定用户是否可访问此堆栈以及用户可以执行哪些操作。如果用户拥有附加 IAM policy,则 AWS OpsWorks Stacks 会评估两组权限。有关示例,请参阅 示例策略

    • Instance access SSH/RDP 设置可指定用户是否对堆栈的实例具有 SSH (Linux) 或 RDP (Windows) 访问权。

      如果您授予 SSH/RDP 访问权,则可以选择 sudo/admin,这样可授予用户对堆栈实例的 sudo (Linux) 或管理 (Windows) 特权。

    
                            利用“Permissions”页面管理用户。

您可以将每个用户分配到以下某个权限级别。有关每个级别所允许的操作列表,请参阅AWS OpsWorks Stacks 权限级别

拒绝

即使用户具有可授予 AWS OpsWorks Stacks 完全访问权限的附加 IAM policy,也无法对堆栈执行任何 AWS OpsWorks Stacks 操作。例如,您可以利用这一点来拒绝某些用户访问堆栈以获取未发布的产品。

IAM Policies Only

默认级别,该级别分配给所有新导入的用户,以及新创建堆栈的所有用户。用户的权限由其所附加的 IAM policy 确定。如果用户没有 IAM policy,或者其策略没有显式 AWS OpsWorks Stacks 权限,则无法访问相应堆栈。通常会向管理用户分配该级别,因为它们的附加 IAM 策略已经授予完全访问权限。

Show (显式)

用户可查看堆栈,但不能执行任何操作。例如,管理员可能希望监控账户的堆栈,但不需要以任何方式部署应用程序或修改堆栈。

部署

包括 Show 权限,并允许用户部署应用程序。例如,应用程序开发人员可能需要将更新部署到堆栈的实例,但不能向堆栈添加层或实例。

Manage

包括 Deploy 权限,并允许用户执行各种堆栈管理工作,其中包括:

  • 添加或删除层和实例。

  • 使用堆栈的 Permissions 页面将权限级别分配给用户。

  • 注册或取消注册资源。

例如,每个堆栈均可能具有指定的管理员,负责确保堆栈具有适当数量和类型的实例、处理软件包和操作系统更新等等。

注意

Manage 级别不允许用户创建或克隆堆栈。必须由附加的 IAM policy 授予这些权限。有关示例,请参阅 Manage 权限

如果用户也拥有附加 IAM policy,则 AWS OpsWorks Stacks 会评估两组权限。这将允许您为用户分配权限级别,然后将策略附加到用户以限制或扩充相应级别允许的操作。例如,您可以附加一种策略,该策略允许 Manage 用户创建或克隆堆栈,或拒绝该用户注册或取消注册资源。要获取此类策略的一些示例,请参阅示例策略

注意

如果用户的策略允许其他操作,则可能显示结果以覆盖 Permissions 页面设置。例如,如果用户拥有策略允许 CreateLayer 操作,但是您使用 权限 页面指定 部署 权限,则仍允许用户创建层。此规则的例外情况是 Deny 选项,该选项甚至会拒绝具有 AWSOpsWorks_FullAccess 策略的用户访问堆栈。有关更多信息,请参阅使用策略控制访问 AWS 资源

查看您的权限

如果启用了自我管理,则用户通过选择右上角的 My Settings,可查看其针对每个堆栈的权限级别汇总。如果用户的策略授予 DescribeMyUserProfileUpdateMyUserProfile 操作权限,用户也可以访问 My Settings

使用 IAM; 条件键来验证临时凭证

AWS OpsWorks Stacks 有一个内置授权层,该层支持更多授权情形 (例如针对各个用户对堆栈的只读或读写访问进行简化管理)。此授权层需要使用临时凭证。因此,如 IAM 文档的 JSON 策略元素参考所述,您不能使用 aws:TokenIssueTime 条件来验证用户是否正在使用长期凭证,或阻止使用临时凭证的用户执行相应操作。