View a markdown version of this page

AWSSupport-GrantPermissionsToIAMUser - AWS Systems Manager Référence du dossier d’exploitation Automation

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

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 ou Support. 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.

Important

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

Exécutez cette automatisation (console)

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 démarre ce runbook.

  • IAMGroupName

    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.

  • IAMUserName

    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 | BillingFullAccess | SupportAndBillingFullAccess

    Par défaut : SupportAndBillingFullAccess

    Description : (Obligatoire) Choisissez l'une des options suivantes : SupportFullAccess donne un accès complet au centre d'assistance. BillingFullAccessdonne un accès complet au tableau de bord de facturation. SupportAndBillingFullAccessdonne un accès complet au centre d'assistance 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 de la manière dont AWSSupport-GrantPermissionsToIAMUser il est exécuté.

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

Il est recommandé de disposer de la politique gérée par AmazonSSMAutomationRole Amazon et des 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 de 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.

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

  3. aws:deleteStack- Supprimer le CloudFormation modèle.

Sorties

configurer IAM.Payload