

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à.

# Accesso all'archivio su più account: azioni per l'amministratore in AccountA
<a name="cross-account-administrator-a"></a>

Per autorizzare gli utenti o i gruppi nell'AccountB ad accedere a un repository nell'AccountA, un amministratore dell'AccountA deve:
+ Creare una policy nell'AccountA che permette l'accesso al repository.
+ Crea un ruolo in AccountA che possa essere assunto dagli utenti e dai gruppi IAM in AccountB.
+ Collegare la policy al ruolo.

Le sezioni che seguono illustrano i passaggi e gli esempi.

**Topics**
+ [Fase 1: Creare una politica per l'accesso al repository in AccountA](#cross-account-create-policy-a)
+ [Fase 2: Creare un ruolo per l'accesso al repository in AccounTa](#cross-account-create-role-a)

## Fase 1: Creare una politica per l'accesso al repository in AccountA
<a name="cross-account-create-policy-a"></a>

È possibile creare una policy in AccountA che conceda l'accesso al repository in AccountA agli utenti in AccountB. A seconda del livello di accesso che vuoi autorizzare, procedi in uno dei seguenti modi:
+ Configurare la policy in modo da permettere agli utenti dell'AccountB di accedere a un repository specifico, ma non di visualizzare un elenco di tutti i repository nell'AccountA.
+ Configurare un livello di accesso aggiuntivo per permettere agli utenti dell'AccountB di scegliere il repository da un elenco di tutti i repository nell'AccountA.<a name="cross-account-create-policy-a-procedure"></a>

**Per creare una policy per l'accesso al repository**

1. Accedi alla console di AWS gestione come utente IAM con le autorizzazioni per creare policy in AccountA.

1. Aprire la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Nel riquadro di navigazione, scegli **Policy**.

1. Scegli **Create Policy** (Crea policy).

1. Scegliere la scheda **JSON** e incollare il documento della seguente policy di JSON nella casella di testo JSON. Sostituisci {{us-east-2}} con Regione AWS for the repository, {{111122223333}} con l'ID account per AccounTa {{MySharedDemoRepo}} e con il nome del CodeCommit tuo repository in AccounTa:

------
#### [ JSON ]

****  

   ```
   {
   "Version":"2012-10-17",		 	 	 
   "Statement": [
       {
           "Effect": "Allow",
           "Action": [
               "codecommit:BatchGet*",
               "codecommit:Create*",
               "codecommit:DeleteBranch",
               "codecommit:Get*",
               "codecommit:List*",
               "codecommit:Describe*",
               "codecommit:Put*",
               "codecommit:Post*",
               "codecommit:Merge*",
               "codecommit:Test*",
               "codecommit:Update*",
               "codecommit:GitPull",
               "codecommit:GitPush"
           ],
           "Resource": [
               "arn:aws:codecommit:us-east-2:{{111122223333}}:{{MySharedDemoRepo}}"
           ]
       }
   ]
   }
   ```

------

   Se desideri che gli utenti che assumono questo ruolo possano visualizzare un elenco di repository nella home page della CodeCommit console, aggiungi una dichiarazione aggiuntiva alla politica, come segue:

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "codecommit:BatchGet*",
                   "codecommit:Create*",
                   "codecommit:DeleteBranch",
                   "codecommit:Get*",
                   "codecommit:List*",
                   "codecommit:Describe*",
                   "codecommit:Put*",
                   "codecommit:Post*",
                   "codecommit:Merge*",
                   "codecommit:Test*",
                   "codecommit:Update*",
                   "codecommit:GitPull",
                   "codecommit:GitPush"
               ],
               "Resource": [
                   "arn:aws:codecommit:{{us-east-2}}:{{111122223333}}:{{MySharedDemoRepo}}"
               ]
           },
           {
               "Effect": "Allow",
               "Action": "codecommit:ListRepositories",
               "Resource": "*"
           }
       ]
   }
   ```

------

   Questo tipo di accesso aiuta gli utenti che assumono questo ruolo con questa policy a individuare il repository a cui possono accedere. Possono scegliere il nome del repository dall'elenco ed essere indirizzati alla home page del repository condiviso (`Code`). Gli utenti non possono accedere a nessun altro repository di quelli visualizzati nell'elenco, ma possono visualizzare i repository nell'AccountA nella pagina **Dashboard (Pannello di controllo)**.

   Se non desideri consentire agli utenti che assumono il ruolo di visualizzare un elenco di tutti gli archivi in AccountA, utilizza il primo esempio di policy, ma assicurati di inviare a tali utenti un link diretto alla home page dell'archivio condiviso nella console. CodeCommit 

1. Scegliere **Esamina policy**. Il validatore delle policy segnala errori di sintassi (ad esempio, se dimentichi di sostituire l'ID account Amazon Web Services di esempio e il nome del repository con l'ID dell'account Amazon Web Services e il nome del repository).

1. Nella pagina **Rivedi la policy**, inserisci un nome per la policy (ad esempio,). {{CrossAccountAccessForMySharedDemoRepo}} È anche possibile fornire una descrizione della policy. Scegli **Crea policy**. 

## Fase 2: Creare un ruolo per l'accesso al repository in AccounTa
<a name="cross-account-create-role-a"></a>

Dopo aver configurato una policy, crea un ruolo che gli utenti e i gruppi IAM in AccountB possono assumere e associa la policy a quel ruolo.<a name="cross-account-create-role-a-procedure"></a>

**Per creare un ruolo per l'accesso al repository**

1. Nella console IAM, scegliere **Roles (Ruoli)**.

1. Scegli **Crea ruolo**.

1. Scegli **un altro account Amazon Web Services**.

1. In **Account ID**, inserisci l'ID dell'account Amazon Web Services per AccountB (ad esempio,{{888888888888}}). Scegli **Successivo: autorizzazioni**.

1. In **Allega le politiche di autorizzazione**, seleziona la politica creata nella procedura precedente (){{CrossAccountAccessForMySharedDemoRepo}}. Scegli **Prossimo: Rivedi**.

1. In **Nome ruolo**, immettete un nome per il ruolo (ad esempio,{{MyCrossAccountRepositoryContributorRole}}). È anche possibike immettere una descrizione del ruolo per aiutare gli altri utenti a capirne lo scopo.

1. Scegli **Crea ruolo**.

1. Aprire il ruolo appena creato e copiare l'ARN del ruolo (ad esempio `arn:aws:iam::{{111122223333}}:role/{{MyCrossAccountRepositoryContributorRole}}`). Questo ARN va inviato all'amministratore dell'AccountB.