为 Linux 和启用 “运行身份” 支持macOS实例 - Amazon Web Services Systems Manager
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

为 Linux 和启用 “运行身份” 支持macOS实例

默认情况下,会话是使用在托管实例上创建的系统生成的 ssm-user 账户的凭证启动的。在 Linux 和macOS计算机上,此帐户添加到/etc/sudoers/。) 您可以使用操作系统 (OS) 帐户的凭证启动会话。操作系统级别和目录策略(如登录限制)可能不适用于操作系统账户,因为会话通过 AWS Identity and Access Management (IAM) 进行身份验证,并在您指定的操作系统账户的上下文中运行。Amazon Web Services Systems Manager会话管理器会在启动会话之前验证您指定的操作系统帐户是否存在。如果指定的操作系统帐户不存在,则会话将无法启动。会话管理器提供了两种方法来指定要使用的操作系统帐户。

方法 1:标记 IAM 用户或角色(推荐)

您可以通过将 IAM 用户或关联角色添加标记,以指定用于启动会话的操作系统用户账户。Amazon提供的键名称SSMSessionRunAs,并将操作系统用户名指定为其值。例如,如果操作系统用户账户名为 DevRoleLogin,则要使用的相应标签为 SSMSessionRunAs = DevRoleLogin

使用此方法,您可以为您标记的每个 IAM 用户或角色指定不同的操作系统账户名称,或者为它们全部使用相同的操作系统用户名。

有关标记 IAM 实体的更多信息,请参阅以下主题:

方法 2:在会话 Management 首选项中指定操作系统用户名

在控制台中配置会话管理器首选项时,或通过使用Amazon命令行界面 (AmazonCLI),您可以指定要用来启动会话的操作系统用户名。

使用该方法,所有会话都由同一操作系统用户为您账户中使用会话管理器连接到实例的所有 IAM 用户运行。

工作原理

如果为会话启用“运行身份”支持,系统将检查访问权限,如下所示:

  1. 对于正在启动会话的用户,是否使用 SSMSessionRunAs = os-user-account-name 标记了其 IAM 用户账户或角色?

    如果是,实例上是否存在此用户名? 如果存在,启动会话。否则,不允许会话启动。

    如果尚未 使用 SSMSessionRunAs = os-user-account-name 标记 IAM 用户的账户或角色,, 请继续执行步骤 2。

  2. 如果尚未使用标记 IAM 用户的账户或角色SSMSessionRunAs = os-user-account-name中指定了一个操作系统用户名Amazon Web Services 账户的会话管理器首选项?

    如果是,实例上是否存在此用户名? 如果存在,启动会话。否则,不允许会话启动。

    此时,会话管理器不会回退默认的ssm-useraccount. 换句话说,启用“运行身份”支持可防止使用实例上的 ssm-user 账户启动会话。

为 Linux 和启用 “运行身份” 支持macOS实例

  1. 打开Amazon Web Services Systems Manager控制台位于https://console.aws.amazon.com/systems-manager/

  2. 在导航窗格中,选择会话管理器

  3. 选择 Preferences (首选项) 选项卡,然后选择 Edit (编辑)

  4. 选中 Enable Run As support for Linux instances (为 Linux 实例启用运行身份支持) 旁边的复选框。

  5. 请执行下列操作之一:

    • 选项 1:对于 (Optional) Enter an operating system user name for starting sessions ((可选)输入用于启动会话的操作系统用户名),请在目标实例上输入要用于启动会话的操作系统用户账户的名称。

    • 选项 2:选择 IAM 控制台链接。在导航窗格中,选择 Users (用户)Roles (角色)。选择要将标签添加到的实体(用户或角色),然后选择 Tags (标签) 选项卡。对于密钥名称,输入 SSMSessionRunAs。对于密钥值,输入目标实例上的用户账户名称。选择保存更改

      以下是示例。

      
                                        为会话管理器运行身份权限指定标记的屏幕截图。Key = SSMSessionRunAs,Value=My-OS-User-Name
  6. 选择保存