

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

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

 **Description** 

 Ce runbook accorde les autorisations spécifiées à un groupe IAM (nouveau ou existant) et y ajoute l'utilisateur IAM existant. Stratégies que vous pouvez choisir : [Billing](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/job-function/Billing$serviceLevelSummary) ou [Support](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AWSSupportAccess$serviceLevelSummary). Pour activer l'accès à la facturation pour IAM, n'oubliez pas d'activer également l'[accès des utilisateurs IAM et fédérés aux pages Billing and Cost Management](https://docs.aws.amazon.com/console/iam/billing-enable). 

**Important**  
Si vous fournissez un groupe IAM, tous les utilisateurs IAM du groupe reçoivent les nouvelles autorisations.

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-GrantPermissionsToIAMUser) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
+ IAMGroupNom

  Type : Chaîne

  Par défaut : ExampleSupportAndBillingGroup

   Description : (Obligatoire) il peut d'agir d'un groupe nouveau ou existant. Doit se conformer aux [Limites des noms d'entité IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html#reference_iam-limits-names). 
+ IAMUserNom

  Type : Chaîne

  Par défaut : ExampleUser

  Description : (Obligatoire) il doit s'agir d'un utilisateur existant.
+ LambdaAssumeRole

  Type : Chaîne

  Description : (Facultatif) ARN du rôle assumé par la fonction Lambda.
+ Permissions

  Type : Chaîne

  Valeurs valides : SupportFullAccess \$1 BillingFullAccess \$1 SupportAndBillingFullAccess

  Par défaut : SupportAndBillingFullAccess

   Description : (Obligatoire) Choisissez l'une des options suivantes : `SupportFullAccess` accorde un accès complet au centre de support. `BillingFullAccess`accorde un accès complet au tableau de bord de facturation. `SupportAndBillingFullAccess`accorde un accès complet au centre de Support et au tableau de bord de facturation. Plus d'informations sur les stratégies sous Détails du document. 

**Autorisations IAM requises**

Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook.

 Les autorisations requises dépendent du mode `AWSSupport-GrantPermissionsToIAMUser` d'exécution. 

 **Exécuter en tant qu'utilisateur ou rôle actuellement connecté** 

 Il est recommandé de joindre la politique gérée par `AmazonSSMAutomationRole` Amazon et les autorisations supplémentaires suivantes pour pouvoir créer la fonction Lambda et le rôle IAM à transmettre à 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": "*"
        }
    ]
}
```

------

 **Utilisation AutomationAssumeRole et LambdaAssumeRole** 

 L'utilisateur doit disposer des StartAutomationExecution autorisations **ssm :** sur le runbook et **iam : PassRole sur les rôles IAM** transmis sous forme et. **AutomationAssumeRole**LambdaAssumeRole**** Voici les autorisations dont chaque rôle IAM a besoin : 

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

 **Étapes de document** 

1.  `aws:createStack`- Exécutez CloudFormation Template pour créer une fonction Lambda. 

1.  `aws:invokeLambdaFunction`- Exécutez Lambda pour définir les autorisations IAM. 

1.  `aws:deleteStack`- Supprimer le CloudFormation modèle. 

 **Sorties** 

configureIAM.Payload