Accesso all'archivio su più account: azioni per l'amministratore in AccountA - AWS CodeCommit

AWS CodeCommit non è più disponibile per i nuovi clienti. I clienti esistenti di AWS CodeCommit possono continuare a utilizzare il servizio normalmente. Scopri di più»

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

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 può essere assunto da IAM utenti e gruppi in AccountB.

  • Collegare la policy al ruolo.

Le sezioni che seguono illustrano i passaggi e gli esempi.

Fase 1: Creare una politica per l'accesso al repository in AccounTa

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

Per creare una policy per l'accesso al repository
  1. Accedi alla Console di AWS gestione come IAM utente con le autorizzazioni per creare politiche in AccountA.

  2. Apri la IAM console all'indirizzo. https://console.aws.amazon.com/iam/

  3. Nel pannello di navigazione, selezionare Policies (Policy).

  4. Scegli Create Policy (Crea policy).

  5. Scegli la JSONscheda e incolla il seguente documento di JSON policy nella casella di JSON testo. Replace (Sostituisci) us-east-2 con il comando Regione AWS per il repository, 111122223333 con l'ID dell'account AccounTa, e MySharedDemoRepo con il nome del tuo CodeCommit repository in AccounTa:

    { "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 policy, come segue:

    { "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

  6. Scegli Verifica 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).

  7. Nella pagina Rivedi la policy, inserisci un nome per la policy (ad esempio, CrossAccountAccessForMySharedDemoRepo). Puoi anche fornire una descrizione facoltativa per questa politica. Scegli Create Policy (Crea policy).

Fase 2: Creare un ruolo per l'accesso al repository in AccounTa

Dopo aver configurato una policy, crea un ruolo che IAM gli utenti e i gruppi in AccountB possano assumere e associa la policy a quel ruolo.

Per creare un ruolo per l'accesso al repository
  1. Nella console IAM, scegliere Roles (Ruoli).

  2. Scegliere Crea ruolo.

  3. Scegli un altro account Amazon Web Services.

  4. In Account ID, inserisci l'ID dell'account Amazon Web Services per AccountB (ad esempio, 888888888888). Scegli Avanti: Autorizzazioni.

  5. In Allega criteri di autorizzazione, seleziona il criterio creato nella procedura precedente (CrossAccountAccessForMySharedDemoRepo). Scegli Avanti: revisione.

  6. In Nome ruolo, inserisci un nome per il ruolo (ad esempio, MyCrossAccountRepositoryContributorRole). Puoi anche inserire una descrizione facoltativa per aiutare gli altri a comprendere lo scopo del ruolo.

  7. Scegliere Crea ruolo.

  8. Apri il ruolo appena creato e copia il ruolo ARN (ad esempio,arn:aws:iam::111122223333:role/MyCrossAccountRepositoryContributorRole). È necessario fornirlo ARN all'amministratore di AccountB.