Personnalisez les comptes avec Account Factory Customization (AFC) - 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.

Personnalisez les comptes avec Account Factory Customization (AFC)

AWSControl Tower vous permet de personnaliser les ressources nouvelles et existantes Comptes AWS lorsque vous provisionnez leurs ressources depuis la console AWS Control Tower. Une fois que vous avez configuré la personnalisation du compte en usine, AWS Control Tower automatise ce processus pour le provisionnement futur, de sorte que vous n'avez pas à gérer de pipeline. Les comptes personnalisés peuvent être utilisés immédiatement après le provisionnement des ressources.

Vos comptes personnalisés sont approvisionnés dans Account Factory, via des AWS CloudFormation modèles ou avec Terraform. Vous allez définir un modèle qui servira de plan de compte personnalisé. Votre plan décrit les ressources et les configurations spécifiques dont vous avez besoin lorsqu'un compte est provisionné. Des plans prédéfinis, élaborés et gérés par des AWS partenaires, sont également disponibles. Pour plus d'informations sur les plans gérés par des partenaires, consultez la bibliothèque AWS Service Catalog Getting Started.

Note

AWSControl Tower contient des contrôles proactifs qui surveillent AWS CloudFormation les ressources dans AWS Control Tower. Vous pouvez éventuellement activer ces commandes dans votre zone de landing zone. Lorsque vous appliquez des contrôles proactifs, ils vérifient que les ressources que vous êtes sur le point de déployer sur vos comptes sont conformes aux politiques et procédures de votre organisation. Pour plus d'informations sur les contrôles proactifs, voir Contrôles proactifs.

Les plans de votre compte sont stockés dans un compte qui Compte AWS, à nos fins, est appelé compte hub. Les Blueprints sont stockés sous la forme d'un produit Service Catalog. Nous appelons ce produit un modèle, afin de le distinguer de tous les autres produits Service Catalog. Pour en savoir plus sur la création de produits Service Catalog, consultez la section Création de produits dans le Guide de l'AWS Service Catalog administrateur.

Appliquer des plans à des comptes existants

Vous pouvez également appliquer des plans personnalisés à des comptes existants en suivant les étapes de mise à jour du compte dans la console AWS Control Tower. Pour plus de détails, consultez Mettre à jour le compte dans la console.

Avant de commencer

Avant de commencer à créer des comptes personnalisés avec AWS Control Tower Account Factory, vous devez avoir déployé un environnement de zone d'atterrissage AWS Control Tower, et vous devez disposer d'une unité organisationnelle (UO) enregistrée auprès de AWS Control Tower, où seront placés vos nouveaux comptes.

Pour plus d'informations sur l'utilisationAFC, consultez Automatiser la personnalisation des comptes à l'aide de Account Factory Customization dans AWS Control Tower.

Préparation à la personnalisation
  • Vous pouvez créer un nouveau compte pour servir de compte hub, ou vous pouvez utiliser un compte existant Compte AWS. Nous vous recommandons vivement de ne pas utiliser le compte de gestion AWS Control Tower comme compte Blueprint Hub.

  • Si vous envisagez de vous inscrire Comptes AWS à AWS Control Tower et de les personnaliser, vous devez d'abord ajouter le AWSControlTowerExecution rôle à ces comptes, comme vous le feriez pour tout autre compte que vous inscrivez dans AWS Control Tower.

  • Si vous envisagez d'utiliser des plans partenaires soumis à des exigences d'abonnement à la place de marché, vous devez les configurer depuis votre compte de gestion AWS Control Tower avant de déployer les plans partenaires en tant que plans de personnalisation du compte en usine.

Note

Un plan peut être déployé par compte AWS Control Tower.

Considérations relatives à la personnalisation d'Account Factory () AFC

  • AFCprend en charge la personnalisation à l'aide d'un seul produit AWS Service Catalog Blueprint.

  • Les produits AWS Service Catalog Blueprint doivent être créés dans le compte hub et dans la même région que la région d'origine de la zone d'atterrissage de la AWS Control Tower.

  • Le AWSControlTowerBlueprintAccess IAM rôle doit être créé avec le nom, les autorisations et la politique de confiance appropriés.

  • AWSControl Tower propose deux options de déploiement pour les plans : le déploiement dans la région d'origine uniquement ou le déploiement dans toutes les régions régies par AWS Control Tower. La sélection des régions n'est pas disponible.

  • Lorsque vous mettez à jour un plan dans un compte membre, l'identifiant du compte Blueprint Hub et le produit AWS Service Catalog Blueprint ne peuvent pas être modifiés.

  • AWSControl Tower ne prend pas en charge la suppression d'un plan existant et l'ajout d'un nouveau plan en une seule opération de mise à jour du plan. Vous pouvez supprimer un plan puis en ajouter un nouveau dans le cadre d'opérations distinctes.

  • AWSControl Tower modifie le comportement selon que vous créez ou inscrivez des comptes personnalisés ou des comptes non personnalisés. Si vous ne créez ou n'inscrivez pas de comptes personnalisés à l'aide de plans, AWS Control Tower crée un produit approvisionné par Account Factory (via Service Catalog) dans le compte de gestion de AWS Control Tower. Si vous spécifiez la personnalisation lors de la création ou de l'inscription de comptes à l'aide de plans, AWS Control Tower ne crée aucun produit approvisionné par Account Factory dans le compte de gestion de AWS Control Tower.

En cas d'erreur de plan

Erreur lors de l'application d'un plan

Si une erreur se produit lors du processus d'application d'un plan à un compte, qu'il s'agisse d'un nouveau compte ou d'un compte existant que vous êtes en train d'inscrire à AWS Control Tower, la procédure de récupération est la même. Le compte existera, mais il n'est pas personnalisé et il n'est pas inscrit à AWS Control Tower. Pour continuer, suivez les étapes pour enregistrer le compte dans AWS Control Tower et ajoutez le plan au moment de l'inscription.

Erreur lors de la création du AWSControlTowerBlueprintAccess rôle et solutions

Lorsque vous créez le AWSControlTowerBlueprintAccess rôle à partir d'un compte AWS Control Tower, vous devez être connecté en tant que principal en utilisant le AWSControlTowerExecution rôle. Si vous êtes connecté sous un autre nom, l'CreateRoleopération est empêchée par unSCP, comme indiqué dans l'artefact suivant :

{ "Condition": { "ArnNotLike": { "aws:PrincipalArn": [ "arn:aws:iam::*:role/AWSControlTowerExecution", "arn:aws:iam::*:role/stacksets-exec-*" ] } }, "Action": [ "iam:AttachRolePolicy", "iam:CreateRole", "iam:DeleteRole", "iam:DeleteRolePermissionsBoundary", "iam:DeleteRolePolicy", "iam:DetachRolePolicy", "iam:PutRolePermissionsBoundary", "iam:PutRolePolicy", "iam:UpdateAssumeRolePolicy", "iam:UpdateRole", "iam:UpdateRoleDescription" ], "Resource": [ "arn:aws:iam::*:role/aws-controltower-*", "arn:aws:iam::*:role/*AWSControlTower*", "arn:aws:iam::*:role/stacksets-exec-*" ], "Effect": "Deny", "Sid": "GRIAMROLEPOLICY" }

Les solutions de contournement suivantes sont disponibles :

  • (Très recommandé) Assumez le AWSControlTowerExecution rôle et AWSControlTowerBlueprintAccess créez-le. Si vous choisissez cette solution, veillez à vous déconnecter du AWSControlTowerExecution rôle immédiatement après, afin d'éviter toute modification involontaire des ressources.

  • Connectez-vous à un compte qui n'est pas inscrit à AWS Control Tower et qui n'est donc pas soumis à cette obligationSCP.

  • Modifiez-le temporairement SCP pour autoriser l'opération.

  • (Fortement déconseillé) Utilisez votre compte de gestion AWS Control Tower comme compte hub, afin qu'il ne soit pas soumis à laSCP.

Personnalisation de votre document de politique pour les AFC plans basés sur CloudFormation

Lorsque vous activez un plan par le biais de Account Factory, AWS Control Tower vous demande AWS CloudFormation d'en créer un StackSet en votre nom. AWS CloudFormation nécessite l'accès à votre compte géré pour créer des AWS CloudFormation piles dans le StackSet. Bien qu'il dispose AWS CloudFormation déjà de privilèges d'administrateur sur le compte géré via le AWSControlTowerExecution rôle, ce rôle n'est pas assumable par AWS CloudFormation.

Dans le cadre de l'activation d'un plan, AWS Control Tower crée un rôle dans le compte du membre, qui AWS CloudFormation peut être chargé d'effectuer les tâches StackSet de gestion. Le moyen le plus simple d'activer votre plan personnalisé via Account Factory consiste à utiliser une politique d'autorisation complète, car ces politiques sont compatibles avec n'importe quel modèle de plan.

Cependant, les meilleures pratiques suggèrent que vous devez restreindre les autorisations pour AWS CloudFormation le compte cible. Vous pouvez fournir une politique personnalisée, que AWS Control Tower applique au rôle qu'elle crée AWS CloudFormation pour être utilisé. Par exemple, si votre plan crée un SSM paramètre appelé something-important, vous pouvez fournir la politique suivante :

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCloudFormationActionsOnStacks", "Effect": "Allow", "Action": "cloudformation:*", "Resource": "arn:aws:cloudformation:*:*:stack/*" }, { "Sid": "AllowSsmParameterActions", "Effect": "Allow", "Action": [ "ssm:PutParameter", "ssm:DeleteParameter", "ssm:GetParameter", "ssm:GetParameters" ], "Resource": "arn:*:ssm:*:*:parameter/something-important" } ] }

L'AllowCloudFormationActionsOnStacksinstruction est obligatoire pour toutes les politiques AFC personnalisées ; AWS CloudFormation utilise ce rôle pour créer des instances de pile, elle nécessite donc une autorisation pour effectuer des AWS CloudFormation actions sur les piles. La AllowSsmParameterActions section est spécifique au modèle en cours d'activation.

Résoudre les problèmes d'autorisation

Lorsque vous activez un plan avec une politique restreinte, il se peut que les autorisations soient insuffisantes pour activer le plan. Pour résoudre ces problèmes, révisez votre document de politique et mettez à jour les préférences relatives au plan du compte membre afin d'utiliser la politique corrigée. Pour vérifier que la politique est suffisante pour activer le plan, assurez-vous que les AWS CloudFormation autorisations sont accordées et que vous pouvez créer une pile directement à l'aide de ce rôle.

Autorisations supplémentaires requises pour créer un produit Service Catalog basé sur Terraform

Lorsque vous créez un produit AWS Service Catalog externe avec un fichier de configuration Terraform pourAFC, AWS Service Catalog certaines autorisations doivent être ajoutées à votre IAM politique AFC personnalisée, en plus des autorisations requises pour créer les ressources définies dans votre modèle. Si vous choisissez la politique d'administration complète par défaut, vous n'avez pas besoin d'ajouter ces autorisations supplémentaires.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "resource-groups:CreateGroup", "resource-groups:ListGroupResources", "resource-groups:DeleteGroup", "resource-groups:Tag" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "tag:GetResources", "tag:GetTagKeys", "tag:GetTagValues", "tag:TagResources", "tag:UntagResources" ], "Resource": "*", "Effect": "Allow" }, { "Action": "s3:GetObject", "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "s3:ExistingObjectTag/servicecatalog:provisioning": "true" } } } ] }

Pour plus d'informations sur la création de produits Terraform à l'aide du type de produit externe dans AWS Service Catalog, voir Étape 5 : Création de rôles de lancement dans le Guide de l'administrateur du Service Catalog.