

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# `AWSSupport-GrantPermissionsToIAMUser`
<a name="automation-awssupport-grantpermissionstoiamuser"></a>

 **Descrição** 

 Este runbook concede as permissões especificadas a um grupo do IAM (novo ou existente) e adiciona o usuário do IAM existente a ele. As políticas das quais você pode escolher: [Faturamento](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/job-function/Billing$serviceLevelSummary) ou [Suporte](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AWSSupportAccess$serviceLevelSummary). Para ativar o acesso de faturamento para o IAM, lembre-se de ativar o [acesso do usuário do IAM e do usuário federado às páginas de Gerenciamento de custo e Faturamento](https://docs.aws.amazon.com/console/iam/billing-enable). 

**Importante**  
Se você fornecer um grupo do IAM existente, todos os usuários do IAM atualmente no grupo recebem as novas permissões.

 [Executar esta automação (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-GrantPermissionsToIAMUser) 

**Tipo de documento**

Automação

**Proprietário**

Amazon

**Plataformas**

Linux, macOS, Windows

**Parâmetros**
+ AutomationAssumeRole

  Tipo: String

  Descrição: (opcional) o nome do recurso da Amazon (ARN) do perfil do AWS Identity and Access Management (IAM) que permite que o Systems Manager Automation realize ações em seu nome. Se nenhum perfil for especificado, o Systems Manager Automation usa as permissões do usuário que inicia este runbook.
+ IAMGroupNome

  Tipo: string

  Padrão: ExampleSupportAndBillingGroup

   Descrição: (Obrigatório) Pode ser um grupo novo ou existente. Deve estar em conformidade com as [Limitações de nome das entidades do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html#reference_iam-limits-names). 
+ IAMUserNome

  Tipo: string

  Padrão: ExampleUser

  Descrição: (Obrigatório) Deve ser um usuário existente.
+ LambdaAssumeRole

  Tipo: string

  Descrição: (opcional) O ARN da função assumida pelo lambda.
+ Permissões

  Tipo: string

  Valores válidos: SupportFullAccess \$1 BillingFullAccess \$1 SupportAndBillingFullAccess

  Padrão: SupportAndBillingFullAccess

   Descrição: (obrigatório) Escolha um dos itens a seguir: `SupportFullAccess` concede acesso total à central de suporte. `BillingFullAccess` concede acesso total ao painel de faturamento. `SupportAndBillingFullAccess` concede acesso total à central de suporte e ao painel de faturamento. Mais informações sobre políticas estão em Detalhes do documento. 

**Permissões obrigatórias do IAM**

O parâmetro `AutomationAssumeRole` requer as seguintes ações para usar o runbook com êxito.

 As permissões necessárias dependem de como o `AWSSupport-GrantPermissionsToIAMUser` é executado. 

 **Executando como o usuário ou o perfil conectado no momento** 

 É recomendável anexar a política gerenciada `AmazonSSMAutomationRole` da Amazon e as seguintes permissões adicionais para poder criar a função do Lambda e o perfil do IAM para passar para o Lambda: 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "lambda:InvokeFunction",
                "lambda:CreateFunction",
                "lambda:DeleteFunction",
                "lambda:GetFunction"
            ],
            "Resource": "arn:aws:lambda:*:111122223333: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": "*"
        }
    ]
}
```

------

 **Usando AutomationAssumeRole e LambdaAssumeRole** 

 O usuário deve ter as StartAutomationExecution permissões **ssm:** no runbook e **iam: PassRole** nas funções do IAM passadas como e. **AutomationAssumeRole**LambdaAssumeRole**** Aqui estão as permissões que cada função do IAM precisa: 

```
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" : "*"
                        }
                    ]
                }
```

 **Etapas do documento** 

1.  `aws:createStack`- Execute o CloudFormation modelo para criar uma função Lambda. 

1.  `aws:invokeLambdaFunction` :Executar o Lambda para definir as permissões do IAM. 

1.  `aws:deleteStack`- Excluir CloudFormation modelo. 

 **Saídas** 

configureIAM.Payload