In che modo AWS Control Tower funziona con i ruoli per creare e gestire 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à.

In che modo AWS Control Tower funziona con i ruoli per creare e gestire account

In generale, i ruoli fanno parte della gestione delle identità e degli accessi (IAM) in AWS. Per informazioni generali su IAM e i ruoli in AWS, consulta l'argomento sui ruoli IAM nella Guida per l'utente AWS IAM.

Ruoli e creazione di account

AWS Control Tower crea l'account di un cliente chiamando l'CreateAccountAPI di AWS Organizations. Quando AWS Organizations crea questo account, crea un ruolo all'interno di quell'account, che AWS Control Tower nomina passando un parametro all'API. Il nome del ruolo è AWSControlTowerExecution.

AWS Control Tower assume il AWSControlTowerExecution ruolo di tutti gli account creati da Account Factory. Utilizzando questo ruolo, AWS Control Tower definisce le linee di base dell'account e applica i controlli obbligatori (e tutti gli altri abilitati), il che comporta la creazione di altri ruoli. Questi ruoli a loro volta vengono utilizzati da altri servizi, come. AWS Config

Nota

Per basare un account è necessario impostare le sue risorse, che includono i modelli di Account Factory, a volte denominati blueprint, e i controlli. Il processo di baselining imposta anche i ruoli centralizzati di registrazione e controllo di sicurezza sull'account, come parte della distribuzione dei modelli. Le linee di base di AWS Control Tower sono contenute nei ruoli che applichi a ogni account registrato.

Per ulteriori informazioni su account e risorse, consulta. Informazioni su Account AWS AWS Control Tower

In che modo AWS Control Tower aggrega AWS Config le regole in unità organizzative e account non gestiti

L'account di gestione AWS Control Tower crea un aggregatore a livello di organizzazione, che aiuta a rilevare AWS Config le regole esterne, in modo che AWS Control Tower non debba accedere agli account non gestiti. La console AWS Control Tower mostra quante AWS Config regole create esternamente hai per un determinato account. È possibile visualizzare i dettagli su tali regole esterne nella scheda External Config Rule Compliance della pagina dei dettagli dell'account.

Per creare l'aggregatore, AWS Control Tower aggiunge un ruolo con le autorizzazioni necessarie per descrivere un'organizzazione ed elencare gli account al suo interno. Il AWSControlTowerConfigAggregatorRoleForOrganizations ruolo richiede la policy AWSConfigRoleForOrganizations gestita e una relazione di fiducia con. config.amazonaws.com

Ecco la policy IAM (artefatto JSON) allegata al ruolo:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "organizations:ListAccounts", "organizations:DescribeOrganization", "organizations:ListAWSServiceAccessForOrganization" ], "Resource": "*" } ] }

Ecco la relazione di fiduciaAWSControlTowerConfigAggregatorRoleForOrganizations:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } }

Per distribuire questa funzionalità nell'account di gestione, vengono aggiunte le seguenti autorizzazioni nella politica gestitaAWSControlTowerServiceRolePolicy, utilizzata dal AWSControlTowerAdmin ruolo al momento della creazione dell' AWS Config aggregatore:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "config:PutConfigurationAggregator", "config:DeleteConfigurationAggregator", "iam:PassRole" ], "Resource": [ "arn:aws:iam:::role/service-role/AWSControlTowerConfigAggregatorRoleForOrganizations", "arn:aws:config:::config-aggregator/" ] }, { "Effect": "Allow", "Action": "organizations:EnableAWSServiceAccess", "Resource": "*" } ] }

Nuove risorse create: e AWSControlTowerConfigAggregatorRoleForOrganizations aws-controltower-ConfigAggregatorForOrganizations

Quando sei pronto, puoi registrare gli account singolarmente o registrarli come gruppo registrando un'unità organizzativa. Quando registri un account, se crei una regola in AWS Config, AWS Control Tower rileva la nuova regola. L'aggregatore mostra il numero di regole esterne e fornisce un collegamento alla AWS Config console in cui puoi visualizzare i dettagli di ciascuna regola esterna per il tuo account. Utilizza le informazioni nella AWS Config console e nella console AWS Control Tower per determinare se hai abilitato i controlli appropriati per l'account.

Ruoli programmatici e relazioni di fiducia per l'account di audit AWS Control Tower

Puoi accedere all'account di audit e assumere il ruolo di esaminare altri account in modo programmatico. L'account di audit non consente di accedere manualmente ad altri account.

L'account di controllo consente l'accesso programmatico ad altri account, tramite alcuni ruoli concessi solo alle funzioni AWS Lambda. Per motivi di sicurezza, questi ruoli intrattengono rapporti di fiducia con altri ruoli, il che significa che le condizioni in base alle quali i ruoli possono essere utilizzati sono rigorosamente definite.

Il set di stack AWS Control Tower StackSet-AWSControlTowerBP-BASELINE-ROLES crea questi ruoli esclusivamente programmatici e tra account nell'account di audit:

  • aws-controltower- AdministratorExecutionRole

  • aws-controltower- AuditAdministratorRole

  • aws-controltower- ReadOnlyExecutionRole

  • aws-controltower- AuditReadOnlyRole

ReadOnlyExecutionRole:Tieni presente che questo ruolo consente all'account di controllo di leggere gli oggetti nei bucket Amazon S3 in tutta l'organizzazione (a differenza della SecurityAudit policy, che consente solo l'accesso ai metadati).

aws-controltower-: AdministratorExecutionRole
  • Dispone delle autorizzazioni di amministratore

  • Non può essere assunto dalla console

  • Può essere assunto solo da un ruolo nell'account di controllo: il aws-controltower-AuditAdministratorRole

Il seguente artefatto mostra la relazione di fiducia per. aws-controltower-AdministratorExecutionRole Il numero segnaposto 012345678901 verrà sostituito dal Audit_acct_ID numero del tuo account di verifica.

{   "Version": "2012-10-17",   "Statement": [     {       "Effect": "Allow",       "Principal": {         "AWS": "arn:aws:iam::012345678901:role/aws-controltower-AuditAdministratorRole"       },       "Action": "sts:AssumeRole"     }   ] }
aws-controltower-: AuditAdministratorRole
  • Può essere assunto solo dal servizio AWS Lambda

  • È autorizzato a eseguire operazioni di lettura (Get) e scrittura (Put) su oggetti Amazon S3 con nomi che iniziano con la stringa log

Politiche allegate:

1. AWSLambdaExecute— politica AWS gestita

2. AssumeRole-aws-controltower- AuditAdministratorRole — politica in linea — Creata da AWS Control Tower, segue l'artefatto.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "sts:AssumeRole" ], "Resource": [ "arn:aws:iam::*:role/aws-controltower-AdministratorExecutionRole" ], "Effect": "Allow" } ] }

Il seguente artefatto mostra la relazione di fiducia per: aws-controltower-AuditAdministratorRole

{   "Version": "2012-10-17",   "Statement": [     {       "Effect": "Allow",       "Principal": {         "Service": "lambda.amazonaws.com"       },       "Action": "sts:AssumeRole"     }   ] }
aws-controltower-: ReadOnlyExecutionRole
  • Non può essere assunto dalla console

  • Può essere assunto solo da un altro ruolo nell'account di controllo: il AuditReadOnlyRole

Il seguente artefatto mostra la relazione di fiducia per. aws-controltower-ReadOnlyExecutionRole Il numero segnaposto 012345678901 verrà sostituito dal Audit_acct_ID numero del tuo account di verifica.

{   "Version": "2012-10-17",   "Statement": [     {       "Effect": "Allow",       "Principal": {         "AWS": "arn:aws:iam::012345678901:role/aws-controltower-AuditReadOnlyRole "       },       "Action": "sts:AssumeRole"     }   ] }
aws-controltower-: AuditReadOnlyRole
  • Può essere assunto solo dal servizio AWS Lambda

  • È autorizzato a eseguire operazioni di lettura (Get) e scrittura (Put) su oggetti Amazon S3 con nomi che iniziano con la stringa log

Politiche allegate:

1. AWSLambdaExecute— politica AWS gestita

2. AssumeRole-aws-controltower- AuditReadOnlyRole — politica in linea — Creata da AWS Control Tower, segue l'artefatto.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "sts:AssumeRole" ], "Resource": [ "arn:aws:iam::*:role/aws-controltower-ReadOnlyExecutionRole" ], "Effect": "Allow" } ] }

Il seguente artefatto mostra la relazione di fiducia per: aws-controltower-AuditAdministratorRole

{   "Version": "2012-10-17",   "Statement": [     {       "Effect": "Allow",       "Principal": {         "Service": "lambda.amazonaws.com"       },       "Action": "sts:AssumeRole"     }   ] }

Effettuazione del provisioning automatico degli account con ruoli IAM

Per configurare gli account Account Factory in modo più automatizzato, puoi creare funzioni Lambda nell'account di gestione AWS Control Tower, che assume il AWSControlTowerExecutionruolo nell'account membro. Quindi, utilizzando il ruolo, l'account di gestione esegue i passaggi di configurazione desiderati in ciascun account membro.

Se esegui il provisioning degli account utilizzando le funzioni Lambda, l'identità che eseguirà questo lavoro deve avere la seguente politica di autorizzazioni IAM, oltre a. AWSServiceCatalogEndUserFullAccess

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSControlTowerAccountFactoryAccess", "Effect": "Allow", "Action": [ "sso:GetProfile", "sso:CreateProfile", "sso:UpdateProfile", "sso:AssociateProfile", "sso:CreateApplicationInstance", "sso:GetSSOStatus", "sso:GetTrust", "sso:CreateTrust", "sso:UpdateTrust", "sso:GetPeregrineStatus", "sso:GetApplicationInstance", "sso:ListDirectoryAssociations", "sso:ListPermissionSets", "sso:GetPermissionSet", "sso:ProvisionApplicationInstanceForAWSAccount", "sso:ProvisionApplicationProfileForAWSAccountInstance", "sso:ProvisionSAMLProvider", "sso:ListProfileAssociations", "sso-directory:ListMembersInGroup", "sso-directory:AddMemberToGroup", "sso-directory:SearchGroups", "sso-directory:SearchGroupsWithGroupName", "sso-directory:SearchUsers", "sso-directory:CreateUser", "sso-directory:DescribeGroups", "sso-directory:DescribeDirectory", "sso-directory:GetUserPoolInfo", "controltower:CreateManagedAccount", "controltower:DescribeManagedAccount", "controltower:DeregisterManagedAccount", "s3:GetObject", "organizations:describeOrganization", "sso:DescribeRegisteredRegions" ], "Resource": "*" } ] }

Le autorizzazionisso:GetPeregrineStatus, sso:ProvisionApplicationInstanceForAWSAccountsso:ProvisionApplicationProfileForAWSAccountInstance, e sso:ProvisionSAMLProvide sono richieste da AWS Control Tower Account Factory per interagire con AWS IAM Identity Center.