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 assegnati. 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 la CLI AWS come parte della fase di personalizzazione dell'account.

Panoramica

Dopo aver specificato le personalizzazioni nei git repository prescelti, quello in cui memorizzi le personalizzazioni globali o in cui memorizzi le personalizzazioni dell'account, la fase di personalizzazione dell'account viene completata automaticamente dalla pipeline AFT. Per personalizzare gli account in modo retroattivo, vedere. Richiama nuovamente le personalizzazioni

Personalizzazioni globali (facoltative)

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

Personalizzazioni dell'account (facoltative)

Per personalizzare un singolo account, o un insieme di conti, in modo diverso dagli altri account forniti da AFT, puoi sfruttare la parte 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 personalizzazioni globali, devi 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 api_helpers/python nel tuo repository.

  • 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 dell'account

Puoi applicare personalizzazioni all'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 dell'account nel tuo repository di personalizzazioni dell'account. Per ogni personalizzazione dell'account richiesta, utilizza i seguenti passaggi.

Per applicare le personalizzazioni dell'account
  1. Passaggio 1: creare una cartella per la personalizzazione dell'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 dell'account.

  2. Aggiungi le configurazioni alla cartella di personalizzazione dell'account specifica

    Puoi aggiungere configurazioni alla cartella delle personalizzazioni dell'account in base al formato delle configurazioni.

    • Se le tue configurazioni personalizzate sono sotto forma di programmi o script Python, inseriscile nella cartella [account_customizations_name] /api_helpers/python 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 in forma di Terraform, inseriscile nella cartella [account_customizations_name] /terraform che si trova nel tuo repository.

    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

È possibile inviare più richieste di account per gli account presenti nel proprio 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.

Richiama nuovamente le personalizzazioni

AFT offre un modo per richiamare nuovamente le personalizzazioni nella pipeline AFT. Questo metodo è utile quando è stata aggiunta una nuova fase di personalizzazione o quando si apportano modifiche a una personalizzazione esistente. Quando si richiama nuovamente, AFT avvia la pipeline di personalizzazioni per apportare modifiche all'account fornito da AFT. Una event-source-based nuova richiamata consente di applicare personalizzazioni a 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 forniti da AFT.

Passaggio 1: invia le modifiche agli archivi di personalizzazione globali o 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 personalizzazioni deve essere richiamata da una fonte di eventi, come spiegato nei due passaggi successivi.

Fase 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 forniti da AFT.

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

{ "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 reinvoke. È possibile filtrare per unità organizzativa (OU), tag di account e ID account. Se non applichi alcun filtro e includi l'estratto conto"type":"all", viene nuovamente richiamata la personalizzazione per tutti gli account forniti da AFT.

Nota

Se la tua versione di AWS Control Tower è 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 compilato 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 si ripete fino al completamento di tutti gli account che soddisfano i criteri dell'evento.

Fase 3: Monitora l'output di AWS Step Function e guarda AWS CodePipeline in esecuzione

  • L'output Step Function risultante contiene ID di account che corrispondono alla fonte 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 dell'account AFT

Flussi di lavoro di personalizzazione degli account basati su AWS Lambda registri di emissione contenenti l'account di destinazione e gli ID delle richieste di personalizzazione. AFT ti consente di tracciare e risolvere i problemi delle richieste di personalizzazione con Amazon CloudWatch Logs fornendoti le query di CloudWatch Logs Insights che puoi utilizzare per filtrare 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 CloudWatch Logs User Guide.

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

  2. Dal riquadro di navigazione, scegli Logs, quindi seleziona Logs insights.

  3. Scegli Query.

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

    • Registri di personalizzazione per ID account

      Nota

      Assicurati di sostituire «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 sostituire «YOUR-CUSTOMIZATION-REQUEST-ID» con l'ID della richiesta di personalizzazione. Puoi trovare l'ID della tua richiesta di personalizzazione nell'output della macchina a stati del framework di provisioning dell'AFT Account Provisioning Framework. AWS Step Functions Per ulteriori informazioni sul framework di provisioning degli account AFT, vedete 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, assicuratevi di selezionare un intervallo di tempo, quindi scegliete Esegui query.