View a markdown version of this page

Personnaliser le compte - 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.

Personnaliser le compte

L'AFT peut déployer des configurations standard ou personnalisées dans des comptes provisionnés. Dans le compte de gestion de l'AFT, l'AFT fournit un pipeline pour chaque compte. Grâce à ce pipeline, vous pouvez implémenter vos personnalisations dans tous les comptes, dans un ensemble de comptes ou dans des comptes individuels. Vous pouvez exécuter des scripts Python, des scripts bash et des configurations Terraform, ou vous pouvez interagir avec l'AWS CLI dans le cadre de la phase de personnalisation de votre compte.

Vue d’ensemble

Une fois que vos personnalisations sont spécifiées dans les git référentiels que vous avez choisis, que ce soit celui où vous stockez vos personnalisations globales ou celui où vous stockez les personnalisations de votre compte, l'étape de personnalisation du compte est automatiquement terminée par le pipeline AFT. Pour personnaliser les comptes de manière rétroactive, consultezRe-invoke personnalisations.

Personnalisations globales (facultatif)

Vous pouvez choisir d'appliquer certaines personnalisations à tous les comptes provisionnés par l'AFT. Par exemple, si vous devez créer un rôle IAM particulier ou déployer un contrôle personnalisé dans chaque compte, l'étape de personnalisation globale du pipeline AFT vous permet de le faire automatiquement.

Personnalisation du compte (facultatif)

Pour personnaliser un compte individuel ou un ensemble de comptes différemment des autres comptes provisionnés par AFT, vous pouvez tirer parti de la partie du pipeline AFT consacrée aux personnalisations des comptes pour implémenter des configurations spécifiques au compte. Par exemple, seul un certain compte peut nécessiter l'accès à une passerelle Internet.

Prérequis de personnalisation

Avant de commencer à personnaliser les comptes, assurez-vous que ces prérequis sont en place.

Appliquer des personnalisations globales

Pour appliquer des personnalisations globales, vous devez envoyer une structure de dossiers spécifique vers le référentiel de votre choix.

  • Si vos configurations personnalisées se présentent sous la forme de programmes ou de scripts Python, placez-les dans api_helpers/python un dossier de votre référentiel.

  • Si vos configurations personnalisées se présentent sous la forme de scripts Bash, placez-les dans le dossier api_helpers de votre référentiel.

  • Si vos configurations personnalisées sont sous la forme de Terraform, placez-les dans le dossier terraform de votre référentiel.

  • Reportez-vous au fichier README des personnalisations globales pour plus de détails sur la création de configurations personnalisées.

Note

Les personnalisations globales sont appliquées automatiquement, après l'étape du cadre de provisionnement du compte AFT dans le pipeline AFT.

Appliquer les personnalisations de compte

Vous pouvez personnaliser votre compte en transférant une structure de dossiers spécifique vers le référentiel de votre choix. Les personnalisations de compte sont appliquées automatiquement dans le pipeline AFT et après la phase de personnalisation globale. Vous pouvez également créer plusieurs dossiers contenant différentes personnalisations de compte dans votre référentiel de personnalisations de compte. Pour chaque personnalisation de compte dont vous avez besoin, procédez comme suit.

Pour appliquer les personnalisations de compte
  1. Étape 1 : Création d'un dossier pour la personnalisation d'un compte

    Dans le référentiel que vous avez choisi, copiez le ACCOUNT_TEMPLATE dossier fourni par AFT dans un nouveau dossier. Le nom de votre nouveau dossier doit correspondre à celui account_customizations_name que vous avez indiqué dans votre demande de compte.

  2. Ajoutez les configurations au dossier de personnalisation de votre compte spécifique

    Vous pouvez ajouter des configurations au dossier de personnalisation de votre compte en fonction du format de vos configurations.

    • Si vos configurations personnalisées se présentent sous la forme de programmes ou de scripts Python, placez-les dans api_helpers/python le dossier [account_customizations_name]/de votre référentiel.

    • Si vos configurations personnalisées prennent la forme de scripts Bash, placez-les dans le dossier [account_customizations_name] /api_helpers de votre référentiel.

    • Si vos configurations personnalisées sont sous la forme de Terraform, placez-les dans le dossier [account_customizations_name] /terraform qui se trouve dans votre référentiel.

    Pour plus d'informations sur la création de configurations personnalisées, consultez le fichier README de personnalisation des comptes.

  3. Reportez-vous au account_customizations_name paramètre spécifique dans le fichier de demande de compte

    Le fichier de demande de compte AFT inclut le paramètre d'entréeaccount_customizations_name. Entrez le nom de la personnalisation de votre compte comme valeur pour ce paramètre.

Note

Vous pouvez soumettre plusieurs demandes de comptes pour des comptes dans votre environnement. Lorsque vous souhaitez appliquer des personnalisations de compte différentes ou similaires, spécifiez-les à l'aide du paramètre account_customizations_name d'entrée dans vos demandes de compte. Pour plus d'informations, voir Soumettre des demandes de comptes multiples.

Re-invoke personnalisations

L'AFT permet de réinvoquer les personnalisations dans le pipeline AFT. Cette méthode est utile lorsque vous avez ajouté une nouvelle étape de personnalisation ou lorsque vous apportez des modifications à une personnalisation existante. Lorsque vous réinvoquez, AFT lance le pipeline de personnalisations pour apporter des modifications au compte provisionné par AFT. Une réinvocation basée sur la source des événements vous permet d'appliquer des personnalisations à des comptes individuels, à tous les comptes, à des comptes en fonction de leur unité organisationnelle ou à des comptes sélectionnés en fonction de balises.

Suivez ces trois étapes pour réactiver les personnalisations des comptes. AFT-provisioned

Étape 1 : Transférez les modifications aux référentiels globaux ou de personnalisation des git comptes

Vous pouvez mettre à jour vos personnalisations globales et celles de votre compte selon vos besoins et renvoyer les modifications à vos git référentiels. À ce stade, rien ne se passe. Le pipeline de personnalisations doit être invoqué par une source d'événements, comme expliqué dans les deux étapes suivantes.

Étape 2 : démarrer une exécution d'AWS Step Function pour réinvoquer les personnalisations

AFT fournit une fonction AWS Step appelée aft-invoke-customizations dans le compte de gestion AFT. Le but de cette fonction est de réinvoquer le pipeline de personnalisation pour AFT-provisioned les comptes.

Voici un exemple de schéma d'événement (format JSON) que vous pouvez créer pour transmettre des données à la fonction aft-invoke-customizations AWS Step.

{ "include": [ { "type": "all" }, { "type": "ous", "target_value": [ "ou1","ou2"] }, { "type": "tags", "target_value": [ {"key1": "value1"}, {"key2": "value2"}] }, { "type": "accounts", "target_value": [ "acc1_ID","acc2_ID"] } ], "exclude": [ { "type": "ous", "target_value": [ "ou1","ou2"] }, { "type": "tags", "target_value": [ {"key1": "value1"}, {"key2": "value2"}] }, { "type": "accounts", "target_value": [ "acc1_ID","acc2_ID"] } ] }

L'exemple de schéma d'événements montre que vous pouvez choisir les comptes à inclure ou à exclure du processus de réinvocation. Vous pouvez filtrer par unité organisationnelle (OU), par étiquette de compte et par identifiant de compte. Si vous n'appliquez aucun filtre et n'incluez pas le relevé"type":"all", la personnalisation pour tous les AFT-provisioned comptes est réinvoquée.

Vous pouvez inclure un bypass_steps paramètre dans l'entrée Step Functions pour ignorer des phases de provisionnement spécifiques lors de la réinvocation.

Valeur bypass_steps Comportement
["provisioning_bootstrap"] Ignore les phases de provisionnement et de démarrage du compte ; exécute uniquement les pipelines de personnalisation globale et de compte.
[](vide) Exécute le flux complet, y compris le provisionnement (par défaut).

L'exemple suivant montre une entrée Step Functions qui invoque à nouveau les personnalisations pour un compte spécifique tout en contournant les étapes de provisionnement et d'amorçage.

{ "include": [ { "type": "accounts", "target_value": ["123456789012"] } ], "bypass_steps": ["provisioning_bootstrap"] }
Note

Si votre version d'AWS Control Tower Account Factory for Terraform (AFT) est 1.6.5 ou ultérieure, vous pouvez cibler les unités d'organisation imbriquées avec la syntaxe). OU Name (ou-id-1234 Pour plus d'informations, consultez la rubrique suivante sur GitHub.

Une fois que vous avez renseigné les paramètres de l'événement, Step Functions s'exécute et appelle les personnalisations correspondantes. AFT peut invoquer un maximum de 5 personnalisations à la fois. Step Functions attend et boucle jusqu'à ce que tous les comptes correspondant aux critères de l'événement soient terminés.

Étape 3 : Surveillez le résultat d'AWS Step Function et observez AWS CodePipeline en cours d'exécution

  • La sortie Step Function qui en résulte contient des ID de compte qui correspondent à la source d'événements d'entrée Step Function.

  • Accédez à AWS CodePipeline sous Outils pour développeurs et consultez les pipelines de personnalisation correspondants pour l'ID de compte.

Résolution des problèmes liés au suivi des demandes de personnalisation des comptes AFT

Workflows de personnalisation des comptes basés sur des journaux AWS Lambda d'émission contenant des identifiants de compte cible et de demande de personnalisation. AFT vous permet de suivre et de résoudre les demandes de personnalisation avec Amazon CloudWatch Logs en vous fournissant des requêtes CloudWatch Logs Insights que vous pouvez utiliser pour filtrer les CloudWatch journaux liés à votre demande de personnalisation en fonction de votre compte cible ou de votre ID de demande de personnalisation. Pour plus d'informations, consultez la section Analyse des données de journal avec Amazon CloudWatch Logs dans le guide de l'utilisateur Amazon CloudWatch Logs.

Pour utiliser CloudWatch Logs Insights pour AFT
  1. Ouvrez la CloudWatch console à l'adresse https://console.aws.amazon.com/cloudwatch/.

  2. Dans le volet de navigation, choisissez Logs, puis Logs insights.

  3. Choisissez Requêtes.

  4. Dans Exemples de requêtes, choisissez Account Factory pour Terraform, puis sélectionnez l'une des requêtes suivantes :

    • Journaux de personnalisation par identifiant de compte

      Note

      Assurez-vous de le remplacer "YOUR-ACCOUNT-ID" par votre identifiant de compte cible.

      fields @timestamp, log_message.account_id as target_account_id, log_message.customization_request_id as customization_request_id, log_message.detail as detail, @logStream | sort @timestamp desc | filter log_message.account_id == "YOUR-ACCOUNT-ID" and @message like /customization_request_id/
    • Journaux de personnalisation par ID de demande de personnalisation

      Note

      Assurez-vous de le remplacer "YOUR-CUSTOMIZATION-REQUEST-ID" par votre identifiant de demande de personnalisation. Vous pouvez trouver l'ID de votre demande de personnalisation dans la sortie de la machine d' AWS Step Functions état du framework de provisionnement de compte AFT. Pour plus d'informations sur le cadre de provisionnement des comptes AFT, voir Pipeline de provisionnement des comptes AFT

      fields @timestamp, log_message.account_id as target_account_id, log_message.customization_request_id as customization_request_id, log_message.detail as detail, @logStream | sort @timestamp desc | filter log_message.customization_request_id == "YOUR-CUSTOMIZATION-REQUEST-ID"
  5. Après avoir sélectionné une requête, assurez-vous de sélectionner un intervalle de temps, puis choisissez Exécuter la requête.