Procedura dettagliata: automatizza il provisioning degli account nelle API di AWS Control Tower tramite Service Catalog - 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à.

Procedura dettagliata: automatizza il provisioning degli account nelle API di AWS Control Tower tramite Service Catalog

AWS Control Tower è integrato con diversi altri AWS servizi, ad esempio AWS Service Catalog. Puoi utilizzare le API per creare ed effettuare il provisioning degli account dei membri in AWS Control Tower.

Il video mostra come effettuare il provisioning degli account in modo automatico e in batch, richiamando le AWS Service Catalog API. Per il provisioning, chiamerai l'ProvisionProductAPI dall'interfaccia a riga di AWS comando (CLI) e specificherai un file JSON che contiene i parametri per ogni account che desideri configurare. Il video illustra l'installazione e l'utilizzo dell'ambiente di sviluppo AWS Cloud9 per eseguire questo lavoro. I comandi CLI sarebbero gli stessi se si utilizza AWS Cloudshell anziché Cloud9. AWS

Nota

Puoi anche adattare questo approccio per automatizzare gli aggiornamenti degli account, chiamando l'UpdateProvisionedProductAPI di per ogni account. AWS Service Catalog È possibile scrivere uno script per aggiornare gli account, uno per uno.

Trattandosi di un metodo di automazione completamente diverso, se conosci Terraform, puoi effettuare il provisioning degli account con AWS Control Tower Account Factory for Terraform (AFT).

Esempio di ruolo di amministrazione dell'automazione

Ecco un modello di esempio che puoi utilizzare per configurare il tuo ruolo di amministrazione dell'automazione nell'account di gestione. È necessario configurare questo ruolo nel proprio account di gestione in modo che possa eseguire l'automazione con l'accesso di amministratore negli account di destinazione.

AWSTemplateFormatVersion: 2010-09-09 Description: Configure the SampleAutoAdminRole Resources: AdministrationRole: Type: AWS::IAM::Role Properties: RoleName: SampleAutoAdminRole AssumeRolePolicyDocument: Version: 2012-10-17 Statement: - Effect: Allow Principal: Service: cloudformation.amazonaws.com Action: - sts:AssumeRole Path: / Policies: - PolicyName: AssumeSampleAutoAdminRole PolicyDocument: Version: 2012-10-17 Statement: - Effect: Allow Action: - sts:AssumeRole Resource: - "arn:aws:iam::*:role/SampleAutomationExecutionRole"

Esempio di ruolo di esecuzione dell'automazione

Di seguito è riportato un modello di esempio che è possibile utilizzare per configurare il ruolo di esecuzione dell'automazione. Dovresti configurare questo ruolo negli account di destinazione.

AWSTemplateFormatVersion: "2010-09-09" Description: "Create automation execution role for creating Sample Additional Role." Parameters: AdminAccountId: Type: "String" Description: "Account ID for the administrator account (typically management, security or shared services)." AdminRoleName: Type: "String" Description: "Role name for automation administrator access." Default: "SampleAutomationAdministrationRole" ExecutionRoleName: Type: "String" Description: "Role name for automation execution." Default: "SampleAutomationExecutionRole" SessionDurationInSecs: Type: "Number" Description: "Maximum session duration in seconds." Default: 14400 Resources: # This needs to run after AdminRoleName exists. ExecutionRole: Type: "AWS::IAM::Role" Properties: RoleName: !Ref ExecutionRoleName MaxSessionDuration: !Ref SessionDurationInSecs AssumeRolePolicyDocument: Version: "2012-10-17" Statement: - Effect: "Allow" Principal: AWS: - !Sub "arn:aws:iam::${AdminAccountId}:role/${AdminRoleName}" Action: - "sts:AssumeRole" Path: "/" ManagedPolicyArns: - "arn:aws:iam::aws:policy/AdministratorAccess"

Dopo aver configurato questi ruoli, chiami le AWS Service Catalog API per eseguire le attività automatiche. I comandi CLI sono riportati nel video.

Esempio di input di provisioning per l'API Service Catalog

Ecco un esempio dell'input che puoi fornire all'API Service Catalog se utilizzi l'ProvisionProductAPI per effettuare il provisioning degli account AWS Control Tower:

{ pathId: "lpv2-7n2o3nudljh4e", productId: "prod-y422ydgjge2rs", provisionedProductName: "Example product 1", provisioningArtifactId: "pa-2mmz36cfpj2p4", provisioningParameters: [ { key: "AccountEmail", value: "abc@amazon.com" }, { key: "AccountName", value: "ABC" }, { key: "ManagedOrganizationalUnit", value: "Custom (ou-xfe5-a8hb8ml8)" }, { key: "SSOUserEmail", value: "abc@amazon.com" }, { key: "SSOUserFirstName", value: "John" }, { key: "SSOUserLastName", value: "Smith" } ], provisionToken: "c3c795a1-9824-4fb2-a4c2-4b1841be4068" }

Per ulteriori informazioni, consulta il riferimento all'API per Service Catalog.

Nota

Si noti che il formato della stringa di input per il valore di ManagedOrganizationalUnit è cambiato da OU_NAME aOU_NAME (OU_ID). Il video che segue non menziona questa modifica.

Procedura guidata: video

Questo video (6:58) descrive come automatizzare le distribuzioni degli account in AWS Control Tower. Per una migliore visualizzazione, seleziona l'icona nell'angolo in basso a destra del video per ingrandirlo a schermo intero. È disponibile la didascalia.