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à.
Configurazione per la personalizzazione
Le sezioni successive illustrano i passaggi per configurare Account Factory per il processo di personalizzazione. Si consiglia di configurare l'amministratore delegato per l'account hub prima di iniziare questi passaggi.
Riepilogo
-
Fase 1: Crea il ruolo richiesto. Crea un ruolo IAM che conceda l'autorizzazione ad AWS Control Tower di accedere all'account (hub), dove sono archiviati i prodotti Service Catalog, chiamati anche blueprint.
-
Fase 2. Crea il prodotto. AWS Service Catalog Crea il AWS Service Catalog prodotto (chiamato anche «prodotto modello») che ti servirà per creare la base dell'account personalizzato.
-
Fase 3. Rivedi il tuo progetto personalizzato. Ispeziona il AWS Service Catalog prodotto (blueprint) che hai creato.
-
Fase 4. Chiama il tuo progetto per creare un account personalizzato. Inserisci le informazioni sul prodotto blueprint e le informazioni sul ruolo nei campi appropriati in Account Factory, nella console AWS Control Tower, durante la creazione dell'account.
Fase 1: Crea il ruolo richiesto
Prima di iniziare a personalizzare gli account, devi configurare un ruolo che contenga una relazione di fiducia tra AWS Control Tower e il tuo account hub. Se assunto, il ruolo concede ad AWS Control Tower l'accesso per amministrare l'account dell'hub. Il ruolo deve essere denominato. AWSControlTowerBlueprintAccess
AWS Control Tower assume questo ruolo per creare una risorsa Portfolio per tuo conto in AWS Service Catalog, quindi aggiungere il tuo blueprint come prodotto Service Catalog a questo portafoglio e quindi condividere questo portafoglio e il tuo blueprint con il tuo account membro durante il provisioning dell'account.
Sarai tu a creare il AWSControlTowerBlueprintAccess
ruolo, come spiegato nelle sezioni seguenti.
Accedi alla console IAM per configurare il ruolo richiesto.
Per configurare il ruolo in un account AWS Control Tower registrato
-
Federa o accedi come principale nell'account di gestione AWS Control Tower.
-
Dal principale federato nell'account di gestione, assumi o passa al
AWSControlTowerExecution
ruolo nell'account AWS Control Tower registrato che scegli per fungere da account Blueprint Hub. -
Dal
AWSControlTowerExecution
ruolo nell'account AWS Control Tower registrato, crea ilAWSControlTowerBlueprintAccess
ruolo con autorizzazioni e relazioni di fiducia adeguate.
Nota
Per rispettare le linee guida sulle AWS best practice, è importante uscire dal AWSControlTowerExecution
ruolo subito dopo averlo creato. AWSControlTowerBlueprintAccess
Per evitare modifiche involontarie alle risorse, il AWSControlTowerExecution
ruolo è destinato esclusivamente all'uso da parte di AWS Control Tower.
Se il tuo account blueprint hub non è registrato in AWS Control Tower, il AWSControlTowerExecution
ruolo non esisterà nell'account e non è necessario assumerlo prima di continuare con la configurazione del AWSControlTowerBlueprintAccess
ruolo.
Per configurare il ruolo in un account membro non registrato
-
Federati o accedi come principale all'account che desideri designare come account hub, utilizzando il metodo che preferisci.
-
Una volta effettuato l'accesso come responsabile dell'account, crea il
AWSControlTowerBlueprintAccess
ruolo con le autorizzazioni e le relazioni di fiducia appropriate.
Il AWSControlTowerBlueprintAccessruolo deve essere impostato in modo da garantire la fiducia a due responsabili:
-
Il principale (utente) che esegue AWS Control Tower nell'account di gestione AWS Control Tower.
-
Il ruolo indicato
AWSControlTowerAdmin
nell'account di gestione AWS Control Tower.
Ecco un esempio di policy di fiducia, simile a quella che dovrai includere per il tuo ruolo. Questa politica dimostra la migliore pratica di concedere l'accesso con privilegi minimi. Quando crei la tua policy, sostituisci il termine YourManagementAccountId
con l'ID account effettivo del tuo account di gestione AWS Control Tower e sostituisci il termine YourControlTowerUserRole
con l'identificatore del ruolo IAM per il tuo account di gestione.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::YourManagementAccountId:role/service-role/AWSControlTowerAdmin", "arn:aws:iam::YourManagementAccountId:role/YourControlTowerUserRole" ] }, "Action": "sts:AssumeRole" } ] }
Policy sulle autorizzazioni richieste
AWS Control Tower richiede che la policy AWSServiceCatalogAdminFullAccess
gestita denominata sia associata al AWSControlTowerBlueprintAccess
ruolo. Questa policy fornisce le autorizzazioni necessarie quando consente ad AWS Control Tower di amministrare il portafoglio e le risorse AWS Service Catalog del prodotto. AWS Service Catalog Puoi allegare questa policy quando crei il ruolo nella console IAM.
Potrebbero essere necessarie autorizzazioni aggiuntive
Se memorizzi i tuoi blueprint in Amazon S3, AWS Control Tower richiede anche
AmazonS3ReadOnlyAccess
la politica di autorizzazione perAWSControlTowerBlueprintAccess
il ruolo.Il tipo di prodotto AWS Service Catalog Terraform richiede l'aggiunta di alcune autorizzazioni aggiuntive alla politica IAM personalizzata AFC, se non utilizzi la politica di amministrazione predefinita. Li richiede oltre alle autorizzazioni necessarie per creare le risorse definite nel modello terraform.
Fase 2: Crea il prodotto AWS Service Catalog
Per creare un AWS Service Catalog prodotto, segui la procedura descritta in Creazione di prodotti nella Guida per l'AWS Service Catalog amministratore. Aggiungerai il blueprint del tuo account come modello quando creerai il AWS Service Catalog prodotto.
Importante
A seguito HashiCorp dell'aggiornamento delle licenze Terraform, il supporto per i prodotti Terraform Open Source AWS Service Catalog è stato modificato e i prodotti sono stati forniti a un nuovo tipo di prodotto, chiamato External. Per ulteriori informazioni sull'impatto di questa modifica su AFC, incluso come aggiornare i blueprint degli account esistenti al tipo di prodotto esterno, consulta la sezione Transizione al tipo di prodotto esterno.
Riepilogo dei passaggi per creare un blueprint
-
Crea o scarica un AWS CloudFormation modello o un file di configurazione Terraform tar.gz che diventerà il progetto del tuo account. Alcuni esempi di modelli sono forniti più avanti in questa sezione.
-
Accedi al sito in Account AWS cui archivi i tuoi blueprint Account Factory (a volte chiamato account hub).
-
Vai alla AWS Service Catalog console. Scegli Elenco prodotti, quindi scegli Carica nuovo prodotto.
-
Nel riquadro Dettagli del prodotto, inserisci i dettagli del tuo prodotto blueprint, ad esempio un nome e una descrizione.
-
Seleziona Usa un file modello, quindi seleziona Scegli file. Seleziona o incolla il modello o il file di configurazione che hai sviluppato o scaricato per utilizzarlo come blueprint.
-
Scegli Crea prodotto nella parte inferiore della pagina della console.
Puoi scaricare un AWS CloudFormation modello dal repository dell'architettura AWS Service Catalog di riferimento. Un esempio tratto da quel repository aiuta a configurare un piano di backup per le risorse
Ecco un modello di esempio, per un'azienda fittizia chiamata Best Pets. Aiuta a configurare una connessione al loro database di animali domestici.
Resources: ConnectionStringGeneratorLambdaRole: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Version: "2012-10-17" Statement: - Effect: Allow Principal: Service: - lambda.amazonaws.com Action: - "sts:AssumeRole" ConnectionStringGeneratorLambda: Type: AWS::Lambda::Function Properties: FunctionName: !Join ['-', ['ConnectionStringGenerator', !Select [4, !Split ['-', !Select [2, !Split ['/', !Ref AWS::StackId]]]]]] Description: Retrieves the connection string for this account to access the Pet Database Role: !GetAtt ConnectionStringGeneratorLambdaRole.Arn Runtime: nodejs16.x Handler: index.handler Timeout: 5 Code: ZipFile: > const response = require("cfn-response"); exports.handler = function (event, context) { const awsAccountId = context.invokedFunctionArn.split(":")[4] const connectionString= "fake connection string that's specific to account " + awsAccountId; const responseData = { Value: connectionString, } response.send(event, context, response.SUCCESS, responseData); return connectionString; }; ConnectionString: Type: Custom::ConnectionStringGenerator Properties: ServiceToken: !GetAtt ConnectionStringGeneratorLambda.Arn PetDatabaseConnectionString: DependsOn: ConnectionString # For example purposes we're using SSM parameter store. # In your template, use secure alternatives to store # sensitive values such as connection strings. Type: AWS::SSM::Parameter Properties: Name: pet-database-connection-string Description: Connection information for the BestPets pet database Type: String Value: !GetAtt ConnectionString.Value
Fase 3. Rivedi il tuo progetto personalizzato
Puoi visualizzare il tuo blueprint nella AWS Service Catalog console. Per ulteriori informazioni, vedere Managing products nella Service Catalog Adminstrator Guide.
Fase 4. Chiama il tuo blueprint per creare un account personalizzato
Quando segui il flusso di lavoro Create account nella console AWS Control Tower, vedrai una sezione opzionale in cui puoi inserire informazioni sul blueprint che desideri utilizzare per personalizzare gli account.
Nota
È necessario configurare l'account dell'hub di personalizzazione e aggiungere almeno un blueprint (prodotto Service Catalog) prima di poter inserire tali informazioni nella console AWS Control Tower e iniziare a fornire account personalizzati.
Crea o aggiorna un account personalizzato nella console AWS Control Tower.
-
Inserisci l'ID dell'account che contiene i tuoi blueprint.
-
Da quell'account, seleziona un prodotto Service Catalog esistente (blueprint esistente).
-
Seleziona la versione corretta del blueprint (prodotto Service Catalog), se hai più di una versione.
-
(Facoltativo) A questo punto del processo è possibile aggiungere o modificare una politica di fornitura del blueprint. La policy di provisioning del blueprint è scritta in JSON e associata a un ruolo IAM, in modo da poter fornire le risorse specificate nel modello del blueprint. AWS Control Tower crea questo ruolo nell'account del membro in modo che Service Catalog possa distribuire risorse utilizzando set di AWS CloudFormation stack. Il ruolo è denominato
AWSControlTower-BlueprintExecution-bp-
. Laxxxx
AdministratorAccess
policy viene applicata qui per impostazione predefinita. -
Scegli la Regione AWS o le regioni in cui desideri distribuire gli account in base a questo blueprint.
-
Se il tuo blueprint contiene parametri, puoi inserire i relativi valori in campi aggiuntivi nel flusso di lavoro di AWS Control Tower. I valori aggiuntivi possono includere: un nome di GitHub repository, una GitHub filiale, un nome di cluster Amazon ECS e un' GitHub identità per il proprietario del repository.
-
Puoi personalizzare gli account in un secondo momento seguendo la procedura di aggiornamento dell'account, se l'account hub o i blueprint non sono ancora pronti.
Per ulteriori dettagli, consulta Crea un account personalizzato a partire da un blueprint.