View a markdown version of this page

Personalizzazioni dell'account - AWS Control Tower

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Personalizzazioni dell'account

AFT può implementare configurazioni standard o personalizzate negli account con provisioning. Nell'account di gestione AFT, AFT fornisce una pipeline per ogni account. Con questa pipeline, puoi implementare le tue personalizzazioni in tutti gli account, in un set di account o in singoli account. Puoi eseguire script Python, script bash e configurazioni Terraform oppure puoi interagire con l'interfaccia a riga di comando di AWS come parte della fase di personalizzazione dell'account.

Panoramica di

Dopo che le personalizzazioni sono state specificate nei git repository scelti, quello in cui archiviate le personalizzazioni globali o in cui archiviate le personalizzazioni dell'account, la fase di personalizzazione dell'account viene completata automaticamente dalla pipeline AFT. Per personalizzare gli account in modo retroattivo, vedere. Re-invoke personalizzazioni

Personalizzazioni globali (opzionali)

Puoi scegliere di applicare determinate personalizzazioni a tutti gli account forniti da AFT. Ad esempio, se devi creare un particolare ruolo IAM o implementare un controllo personalizzato in ogni account, la fase di personalizzazione globale nella pipeline AFT ti consente di farlo automaticamente.

Personalizzazioni dell'account (opzionali)

Per personalizzare un singolo account, o un set di account, in modo diverso rispetto agli altri account con provisioning AFT, puoi sfruttare la sezione dedicata alle personalizzazioni degli account della pipeline AFT per implementare configurazioni specifiche dell'account. Ad esempio, solo un determinato account può richiedere l'accesso a un gateway Internet.

Prerequisiti di personalizzazione

Prima di iniziare a personalizzare gli account, assicurati che questi prerequisiti siano soddisfatti.

Applica personalizzazioni globali

Per applicare le personalizzazioni globali, è necessario inserire una struttura di cartelle specifica nel repository prescelto.

  • Se le tue configurazioni personalizzate sono sotto forma di programmi o script Python, inseriscili nella cartella del tuo repository. api_helpers/python

  • Se le tue configurazioni personalizzate sono sotto forma di script Bash, inseriscile nella cartella api_helpers del tuo repository.

  • Se le tue configurazioni personalizzate sono sotto forma di Terraform, inseriscile nella cartella terraform del tuo repository.

  • Fai riferimento al file README delle personalizzazioni globali per maggiori dettagli sulla creazione di configurazioni personalizzate.

Nota

Le personalizzazioni globali vengono applicate automaticamente, dopo la fase del framework di provisioning degli account AFT nella pipeline AFT.

Applica le personalizzazioni degli account

Puoi applicare le personalizzazioni dell'account inserendo una struttura di cartelle specifica nel repository prescelto. Le personalizzazioni degli account vengono applicate automaticamente nella pipeline AFT e dopo la fase di personalizzazione globale. Puoi anche creare più cartelle che contengono diverse personalizzazioni degli account nell'archivio delle personalizzazioni degli account. Per ogni personalizzazione dell'account richiesta, segui i passaggi seguenti.

Per applicare le personalizzazioni dell'account
  1. Passaggio 1: creare una cartella per la personalizzazione di un account

    Nel repository prescelto, copia la ACCOUNT_TEMPLATE cartella fornita da AFT in una nuova cartella. Il nome della nuova cartella deve corrispondere a account_customizations_name quello fornito nella richiesta di account.

  2. Aggiungi le configurazioni alla cartella specifica per le personalizzazioni dell'account

    Puoi aggiungere configurazioni alla cartella delle personalizzazioni del tuo account in base al formato delle tue configurazioni.

    • Se le tue configurazioni personalizzate sono sotto forma di programmi o script Python, inseriscile api_helpers/python nella cartella [account_customizations_name]/che si trova nel tuo repository.

    • Se le tue configurazioni personalizzate sono sotto forma di script Bash, inseriscile nella cartella [account_customizations_name] /api_helpers che si trova nel tuo repository.

    • Se le tue configurazioni personalizzate sono sotto forma di Terraform, inseriscile nella cartella /terraform che si trova nel tuo repository. [account_customizations_name]

    Per ulteriori informazioni sulla creazione di configurazioni personalizzate, consulta il file README per le personalizzazioni dell'account.

  3. Fai riferimento al account_customizations_name parametro specifico nel file di richiesta dell'account

    Il file di richiesta dell'account AFT include il parametro di inputaccount_customizations_name. Inserisci il nome della personalizzazione del tuo account come valore per questo parametro.

Nota

Puoi inviare più richieste di account per account nel tuo ambiente. Quando desideri applicare personalizzazioni dell'account diverse o simili, specifica le personalizzazioni dell'account utilizzando il parametro di account_customizations_name input nelle richieste dell'account. Per ulteriori informazioni, consulta Inviare più richieste di account.

Re-invoke personalizzazioni

AFT fornisce un modo per richiamare nuovamente le personalizzazioni nella pipeline AFT. Questo metodo è utile quando hai aggiunto un nuovo passaggio di personalizzazione o quando apporti modifiche a una personalizzazione esistente. Quando si richiama nuovamente, AFT avvia la pipeline di personalizzazione per apportare modifiche all'account fornito da AFT. Una nuova invocazione basata sull'origine degli eventi consente di applicare personalizzazioni ai singoli account, a tutti gli account, agli account in base alla rispettiva unità organizzativa o agli account selezionati in base ai tag.

Segui questi tre passaggi per richiamare nuovamente le personalizzazioni per gli account. AFT-provisioned

Passaggio 1: invia le modifiche agli archivi globali o di personalizzazione degli account git

Puoi aggiornare le personalizzazioni globali e dell'account secondo necessità e inviare le modifiche ai tuoi repository. git A questo punto, non succede nulla. La pipeline di personalizzazione deve essere richiamata da una fonte di eventi, come spiegato nei due passaggi successivi.

Passaggio 2: avvia un'esecuzione di AWS Step Function per richiamare nuovamente le personalizzazioni

AFT fornisce una AWS Step Function richiamata aft-invoke-customizations nell'account di gestione AFT. Lo scopo di tale funzione è richiamare nuovamente la pipeline di personalizzazione per gli account. AFT-provisioned

Ecco un esempio di schema di eventi (formato JSON) che puoi creare per passare l'input alla AWS Step Function. aft-invoke-customizations

{ "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"] } ] }

Lo schema di eventi di esempio mostra che puoi scegliere gli account da includere o escludere dal processo di reinvocazione. È possibile filtrare per unità organizzativa (OU), tag dell'account e ID dell'account. Se non applichi alcun filtro e includi l'estratto conto"type":"all", la personalizzazione per tutti gli AFT-provisioned account viene richiamata nuovamente.

Puoi includere un bypass_steps parametro nell'input di Step Functions per saltare specifiche fasi di provisioning durante la reinvocazione.

bypass_steps value Comportamento
["provisioning_bootstrap"] Salta le fasi di provisioning dell'account e di bootstrap; esegue solo le pipeline di personalizzazione globali e degli account.
[](vuoto) Esegue l'intero flusso, incluso il provisioning (impostazione predefinita).

L'esempio seguente mostra un input di Step Functions che richiama nuovamente le personalizzazioni per un account specifico ignorando le fasi di provisioning e bootstrap.

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

Se la tua versione di AWS Control Tower Account Factory for Terraform (AFT) è 1.6.5 o successiva, puoi scegliere come target le unità organizzative annidate (con la sintassi). OU Name (ou-id-1234 Per ulteriori informazioni, consulta il seguente argomento su. GitHub

Dopo aver inserito i parametri dell'evento, Step Functions viene eseguito e richiama le personalizzazioni corrispondenti. AFT può richiamare un massimo di 5 personalizzazioni alla volta. Step Functions attende e ripete il ciclo fino al completamento di tutti gli account che corrispondono ai criteri dell'evento.

Passaggio 3: monitora l'output di AWS Step Function e osserva AWS in esecuzione CodePipeline

  • L'output di Step Function risultante contiene gli ID degli account che corrispondono alla sorgente dell'evento di input di Step Function.

  • Accedi ad AWS CodePipeline in Developer Tools e visualizza le pipeline di personalizzazione corrispondenti per l'ID dell'account.

Risoluzione dei problemi relativi al tracciamento delle richieste di personalizzazione degli account AFT

Flussi di lavoro per la personalizzazione degli account basati su registri di emissione contenenti gli ID AWS Lambda dell'account di destinazione e delle richieste di personalizzazione. AFT ti consente di tracciare e risolvere i problemi delle richieste di personalizzazione con Amazon CloudWatch Logs fornendoti query Logs Insights che puoi utilizzare per filtrare CloudWatch i CloudWatch log relativi alla tua richiesta di personalizzazione in base all'account di destinazione o all'ID della richiesta di personalizzazione. Per ulteriori informazioni, consulta Analyzing log data with Amazon CloudWatch Logs nella Amazon Logs User Guide. CloudWatch

Per utilizzare CloudWatch Logs Insights for AFT
  1. Apri la CloudWatch console all'indirizzo https://console.aws.amazon.com/cloudwatch/.

  2. Dal pannello di navigazione, scegli Logs, quindi scegli Logs insights.

  3. Scegli Interrogazioni.

  4. In Domande di esempio, scegli Account Factory for Terraform, quindi seleziona una delle seguenti domande:

    • Registri di personalizzazione per ID account

      Nota

      Assicurati di sostituirlo "YOUR-ACCOUNT-ID" con l'ID dell'account di destinazione.

      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/
    • Registri di personalizzazione in base all'ID della richiesta di personalizzazione

      Nota

      Assicurati di sostituirlo "YOUR-CUSTOMIZATION-REQUEST-ID" con il tuo ID di richiesta di personalizzazione. Puoi trovare l'ID della tua richiesta di personalizzazione nell'output della macchina a stato del framework AWS Step Functions di provisioning dell'account AFT. Per ulteriori informazioni sul framework di provisioning degli account AFT, vedi AFT account provisioning pipeline

      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. Dopo aver selezionato una query, assicurati di selezionare un intervallo di tempo, quindi scegli Esegui query.