Procédure pas à pas : Automatisez le provisionnement des comptes dans AWS Control Tower par Service Catalog APIs - AWS Control Tower

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.

Procédure pas à pas : Automatisez le provisionnement des comptes dans AWS Control Tower par Service Catalog APIs

AWSControl Tower est intégré à plusieurs autres AWS services, tels que AWS Service Catalog. Vous pouvez l'utiliser APIs pour créer et approvisionner vos comptes de membre dans AWS Control Tower.

La vidéo vous montre comment approvisionner des comptes de manière automatisée et par lots, en appelant le AWS Service Catalog APIs. Pour le provisionnement, vous appellerez le ProvisionProductAPIdepuis l'interface de ligne de AWS commande (CLI) et vous spécifierez un JSON fichier contenant les paramètres de chaque compte que vous souhaitez configurer. La vidéo illustre l'installation et l'utilisation de l'environnement de développement AWS Cloud9 pour effectuer ce travail. Les CLI commandes seront les mêmes si vous utilisez AWS Cloudshell au lieu de AWS Cloud9.

Note

Vous pouvez également adapter cette approche pour automatiser les mises à jour des comptes, en appelant le UpdateProvisionedProductAPIou AWS Service Catalog de chaque compte. Vous pouvez écrire un script pour mettre à jour les comptes, un par un.

En tant que méthode d'automatisation complètement différente, si vous connaissez Terraform, vous pouvez provisionner des comptes avec AWS Control Tower Account Factory for Terraform (). AFT

Exemple de rôle d'administration de l'automatisation

Voici un exemple de modèle que vous pouvez utiliser pour configurer votre rôle d'administration d'automatisation dans le compte de gestion. Vous devez configurer ce rôle dans votre compte de gestion afin qu'il puisse effectuer l'automatisation avec un accès administrateur sur les comptes cibles.

AWSTemplateFormatVersion: 2010-09-09 Description: Configure the SampleAutoAdminRole Resources: AdministrationRole: Type: AWS::IAM::Role Properties: RoleName: SampleAutoAdminRole AssumeRolePolicyDocument: Version: 2012-10-17 Statement: - Effect: Allow Principal: Service: cloudformation.amazonaws.com Action: - sts:AssumeRole Path: / Policies: - PolicyName: AssumeSampleAutoAdminRole PolicyDocument: Version: 2012-10-17 Statement: - Effect: Allow Action: - sts:AssumeRole Resource: - "arn:aws:iam::*:role/SampleAutomationExecutionRole"

Exemple de rôle d'exécution de l'automatisation

Voici un exemple de modèle que vous pouvez utiliser pour configurer votre rôle d'exécution d'automatisation. Vous devez configurer ce rôle dans les comptes cibles.

AWSTemplateFormatVersion: "2010-09-09" Description: "Create automation execution role for creating Sample Additional Role." Parameters: AdminAccountId: Type: "String" Description: "Account ID for the administrator account (typically management, security or shared services)." AdminRoleName: Type: "String" Description: "Role name for automation administrator access." Default: "SampleAutomationAdministrationRole" ExecutionRoleName: Type: "String" Description: "Role name for automation execution." Default: "SampleAutomationExecutionRole" SessionDurationInSecs: Type: "Number" Description: "Maximum session duration in seconds." Default: 14400 Resources: # This needs to run after AdminRoleName exists. ExecutionRole: Type: "AWS::IAM::Role" Properties: RoleName: !Ref ExecutionRoleName MaxSessionDuration: !Ref SessionDurationInSecs AssumeRolePolicyDocument: Version: "2012-10-17" Statement: - Effect: "Allow" Principal: AWS: - !Sub "arn:aws:iam::${AdminAccountId}:role/${AdminRoleName}" Action: - "sts:AssumeRole" Path: "/" ManagedPolicyArns: - "arn:aws:iam::aws:policy/AdministratorAccess"

Après avoir configuré ces rôles, vous devez appeler le AWS Service Catalog APIs pour effectuer les tâches automatisées. Les CLI commandes sont données dans la vidéo.

Exemple d'entrée de provisionnement pour Service Catalog API

Voici un exemple des informations que vous pouvez apporter au Service Catalog ProvisionProduct API si vous utilisez le API pour approvisionner des comptes AWS Control Tower :

{ pathId: "lpv2-7n2o3nudljh4e", productId: "prod-y422ydgjge2rs", provisionedProductName: "Example product 1", provisioningArtifactId: "pa-2mmz36cfpj2p4", provisioningParameters: [ { key: "AccountEmail", value: "abc@amazon.com" }, { key: "AccountName", value: "ABC" }, { key: "ManagedOrganizationalUnit", value: "Custom (ou-xfe5-a8hb8ml8)" }, { key: "SSOUserEmail", value: "abc@amazon.com" }, { key: "SSOUserFirstName", value: "John" }, { key: "SSOUserLastName", value: "Smith" } ], provisionToken: "c3c795a1-9824-4fb2-a4c2-4b1841be4068" }

Pour plus d'informations, consultez la APIréférence relative à Service Catalog.

Note

Notez que le format de la chaîne d'entrée pour la valeur de ManagedOrganizationalUnit est passé de OU_NAME àOU_NAME (OU_ID). La vidéo qui suit ne mentionne pas ce changement.

Vidéo de procédure

Cette vidéo (6:58) explique comment automatiser les déploiements de comptes dans AWS Control Tower. Pour un visionnage de meilleure qualité, sélectionnez l'icône dans le coin inférieur droit de la vidéo pour l'afficher en plein écran. Le sous-titrage est disponible.