AWSSupport-GrantPermissionsToIAMUser - AWS Systems Manager 自动化运行手册参考

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

AWSSupport-GrantPermissionsToIAMUser

描述

此 Runbook 向IAM群组(新群组或现有群组)授予指定权限,并将现有IAM用户添加到该群组。您可以选择的策略:账单支持。要启用账单访问权限IAM,请记得同时激活IAM用户和联合用户对账单和 Cost Management 页面的访问权限

重要

如果您提供现有IAM群组,则该群组中的所有当前IAM用户都将获得新的权限。

运行此自动化(控制台)

文档类型

自动化

所有者

Amazon

平台

Linux,macOS, Windows

参数

  • AutomationAssumeRole

    类型:字符串

    描述:(可选)允许 Systems ARN Manager Automation 代表您执行操作的 AWS Identity and Access Management (IAM) 角色的亚马逊资源名称 ()。如果未指定角色,Systems Manager Automation 将使用启动此运行手册的用户的权限。

  • IAMGroupName

    类型:字符串

    默认: ExampleSupportAndBillingGroup

    描述:(必需)可以是新组或现有组。必须遵守IAM实体名称限制

  • IAMUserName

    类型:字符串

    默认: ExampleUser

    描述:(必需)必须是现有用户。

  • LambdaAssumeRole

    类型:字符串

    描述:(可选)lambda 担任ARN的角色的名称。

  • 权限

    类型:字符串

    有效值: SupportFullAccess | BillingFullAccess | SupportAndBillingFullAccess

    默认: SupportAndBillingFullAccess

    描述:(必需)选择以下值之一:SupportFullAccess 授予支持中心的完全访问权限。BillingFullAccess 授予“账单”控制面板的完全访问权限。SupportAndBillingFullAccess 授予支持中心和“账单”控制面板的完全访问权限。有关策略的更多信息,请参阅文档详细信息。

必需的IAM权限

AutomationAssumeRole 参数需要执行以下操作才能成功使用运行手册。

所需的权限取决于 AWSSupport-GrantPermissionsToIAMUser 的运行方式。

以当前登录的用户或角色运行

建议您附加AmazonSSMAutomationRole亚马逊托管策略以及以下额外权限,以便能够创建 Lambda 函数和要传递给 Lambda 的IAM角色:

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "lambda:InvokeFunction", "lambda:CreateFunction", "lambda:DeleteFunction", "lambda:GetFunction" ], "Resource": "arn:aws:lambda:*:ACCOUNTID:function:AWSSupport-*", "Effect": "Allow" }, { "Effect" : "Allow", "Action" : [ "iam:CreateGroup", "iam:AddUserToGroup", "iam:ListAttachedGroupPolicies", "iam:GetGroup", "iam:GetUser" ], "Resource" : [ "arn:aws:iam::*:user/*", "arn:aws:iam::*:group/*" ] }, { "Effect" : "Allow", "Action" : [ "iam:AttachGroupPolicy" ], "Resource": "*", "Condition": { "ArnEquals": { "iam:PolicyArn": [ "arn:aws:iam::aws:policy/job-function/Billing", "arn:aws:iam::aws:policy/AWSSupportAccess" ] } } }, { "Effect" : "Allow", "Action" : [ "iam:ListAccountAliases", "iam:GetAccountSummary" ], "Resource" : "*" } ] }

使用 AutomationAssumeRole 和 LambdaAssumeRole

用户必须对运行手册具有 ssm: StartAutomationExecution 权限,对作为AutomationAssumeRole和传递的IAM角色必须具有 PassRole iam: 权限。LambdaAssumeRole以下是每个IAM角色所需的权限:

AutomationAssumeRole { "Version": "2012-10-17", "Statement": [ { "Action": [ "lambda:InvokeFunction", "lambda:CreateFunction", "lambda:DeleteFunction", "lambda:GetFunction" ], "Resource": "arn:aws:lambda:*:ACCOUNTID:function:AWSSupport-*", "Effect": "Allow" } ] }
LambdaAssumeRole { "Version": "2012-10-17", "Statement": [ { "Effect" : "Allow", "Action" : [ "iam:CreateGroup", "iam:AddUserToGroup", "iam:ListAttachedGroupPolicies", "iam:GetGroup", "iam:GetUser" ], "Resource" : [ "arn:aws:iam::*:user/*", "arn:aws:iam::*:group/*" ] }, { "Effect" : "Allow", "Action" : [ "iam:AttachGroupPolicy" ], "Resource": "*", "Condition": { "ArnEquals": { "iam:PolicyArn": [ "arn:aws:iam::aws:policy/job-function/Billing", "arn:aws:iam::aws:policy/AWSSupportAccess" ] } } }, { "Effect" : "Allow", "Action" : [ "iam:ListAccountAliases", "iam:GetAccountSummary" ], "Resource" : "*" } ] }

文档步骤

  1. aws:createStack-运行 AWS CloudFormation 模板创建 Lambda 函数。

  2. aws:invokeLambdaFunction-运行 Lambda 来设置IAM权限。

  3. aws:deleteStack-删除 CloudFormation 模板。

输出

配置 IAM .Payloa