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

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. Avec 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 l'étape de personnalisation de votre compte.

Présentation

Une fois que vos personnalisations ont été spécifiées dans les git référentiels que vous avez choisis, soit celui dans lequel vous stockez vos personnalisations globales, soit celui dans lequel vous stockez les personnalisations de votre compte, l'étape de personnalisation du compte est terminée automatiquement par le pipeline AFT. Pour personnaliser les comptes rétroactivement, voirRéinvoquer les personnalisations.

Personnalisations globales (facultatif)

Vous pouvez choisir d'appliquer certaines personnalisations à tous les comptes fournis par 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.

Personnalisations 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 de 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.

Conditions préalables à la personnalisation

Avant de commencer à personnaliser les comptes, assurez-vous que ces conditions préalables sont réunies.

Appliquer des personnalisations globales

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

  • Si vos configurations personnalisées prennent la forme de programmes ou de scripts Python, placez-les dans le dossier api_helpers/python de votre dépôt.

  • Si vos configurations personnalisées prennent la forme de scripts Bash, placez-les dans le dossier api_helpers de votre dépôt.

  • 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 framework de provisionnement des comptes AFT dans le pipeline AFT.

Appliquer les personnalisations de compte

Vous pouvez appliquer des personnalisations de 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 l'étape 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 dépôt de votre choix, 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 à votre dossier de personnalisation de 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 prennent la forme de programmes ou de scripts Python, placez-les dans le dossier [account_customizations_name] /api_helpers/python qui se trouve dans votre dépôt.

    • Si vos configurations personnalisées prennent la forme de scripts Bash, placez-les dans le dossier [account_customizations_name] /api_helpers qui se trouve dans votre dépôt.

    • 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, reportez-vous au fichier README de personnalisation du compte.

  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 de ce paramètre.

Note

Vous pouvez soumettre plusieurs demandes de compte pour les comptes de 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 les demandes de compte. Pour plus d'informations, voir Soumettre des demandes de comptes multiples.

Réinvoquer les personnalisations

L'AFT fournit un moyen 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 le réappelez, AFT lance le pipeline de personnalisations pour apporter des modifications au compte provisionné par AFT. Une event-source-based réinvocation vous permet d'appliquer des personnalisations à des comptes individuels, à tous les comptes, à des comptes en fonction de leur unité d'organisation ou à des comptes sélectionnés en fonction de balises.

Suivez ces trois étapes pour réinvoquer les personnalisations pour les comptes provisionnés par AFT.

Étape 1 : transférer les modifications vers les référentiels globaux ou de personnalisation des git comptes

Vous pouvez mettre à jour vos personnalisations globales et de 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 l'exécution d'une fonction AWS Step pour réinvoquer des 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 les comptes provisionnés par AFT.

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énement montre que vous pouvez choisir les comptes à inclure ou à exclure du processus de réappel. Vous pouvez filtrer par unité organisationnelle (UO), tags de compte et ID de compte. Si vous n'appliquez aucun filtre et que vous incluez la déclaration"type":"all", la personnalisation pour tous les comptes provisionnés par AFT est à nouveau invoquée.

Note

Si votre version d'AWS Control Tower est 1.6.5 ou ultérieure, vous pouvez cibler des unités d'organisation imbriquées (avec la syntaxeOU 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 invoque les personnalisations correspondantes. AFT peut invoquer un maximum de 5 personnalisations à la fois. Step Functions attend et tourne en boucle jusqu'à ce que tous les comptes correspondant aux critères de l'événement soient complets.

Étape 3 : surveillez la sortie de la fonction AWS Step et observez l' CodePipeline exécution d'AWS

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

  • Accédez à AWS CodePipeline sous Outils de développement 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 du compte AFT

Des flux de travail de personnalisation des comptes basés sur des AWS Lambda journaux d'émission contenant les identifiants du compte cible et des demandes 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. Sous Exemples de requêtes, choisissez Account Factory for Terraform, puis sélectionnez l'une des requêtes suivantes :

    • Journaux de personnalisation par identifiant de compte

      Note

      Assurez-vous de 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 remplacer « YOUR-CUSTOMIZATION-REQUEST-ID » par votre ID 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 comptes 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.