Connessione ai AWS CodeCommit repository con credenziali rotanti - 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à.

Connessione ai AWS CodeCommit repository con credenziali rotanti

Puoi consentire agli utenti di accedere ai tuoi AWS CodeCommit repository senza configurare IAM gli utenti per loro o utilizzare una chiave di accesso e una chiave segreta. Per assegnare le autorizzazioni a un'identità federata, è necessario creare un ruolo e definire le autorizzazioni per il ruolo. Quando un'identità federata viene autenticata, l'identità viene associata al ruolo e ottiene le autorizzazioni da esso definite. Per informazioni sui ruoli per la federazione, consulta Creare un ruolo per un provider di identità di terze parti (federazione) nella Guida per l'utente. IAM Se utilizzi IAM Identity Center, configuri un set di autorizzazioni. Per controllare a cosa possono accedere le identità dopo l'autenticazione, IAM Identity Center correla il set di autorizzazioni a un ruolo in. IAM Per informazioni sui set di autorizzazioni, consulta Set di autorizzazioni nella Guida per l'utente di AWS IAM Identity Center . Puoi anche configurare l'accesso basato sui ruoli per consentire IAM agli utenti di accedere ai CodeCommit repository in account Amazon Web Services separati (una tecnica nota come accesso tra account). Per una panoramica della configurazione dell'accesso tra account a un repository, consulta Configura l'accesso tra account a un AWS CodeCommit repository utilizzando i ruoli.

Puoi anche configurare l'accesso per gli utenti che desiderano o devono effettuare l'autenticazione tramite metodi quali:

  • Security Assertion Markup Language () SAML

  • Autenticazione a più fattori () MFA

  • Federazione

  • Login with Amazon

  • Amazon Cognito

  • Facebook

  • Google

  • Provider di identità compatibile con OpenID Connect (OIDC)

Nota

Le seguenti informazioni si applicano solo all'uso git-remote-codecommit o all'helper delle AWS CLI credenziali per la connessione ai repository. CodeCommit Poiché l'approccio consigliato per l'accesso temporaneo o federato CodeCommit è l'impostazionegit-remote-codecommit, questo argomento fornisce esempi di utilizzo di tale utilità. Per ulteriori informazioni, consulta Passaggi di configurazione per HTTPS le connessioni AWS CodeCommit a git-remote-codecommit.

Non è possibile utilizzare SSH o credenziali Git e connettersi HTTPS ai CodeCommit repository con credenziali di accesso temporanee o rotanti.

Non è necessario completare queste fasi se sono soddisfatti tutti i seguenti requisiti:

EC2Le istanze Amazon che soddisfano i requisiti precedenti sono già configurate per comunicare credenziali di accesso temporanee CodeCommit a tuo nome.

Nota

Puoi configurare e utilizzare git-remote-codecommit su EC2 istanze Amazon.

Per consentire agli utenti l'accesso temporaneo ai tuoi CodeCommit repository, completa i seguenti passaggi.

Fase 1: completamento dei prerequisiti

Completa i passaggi di configurazione per fornire a un utente l'accesso ai tuoi CodeCommit repository utilizzando credenziali rotanti:

Utilizza le informazioni in Autenticazione e controllo degli accessi per AWS CodeCommit per specificare le CodeCommit autorizzazioni che desideri concedere all'utente.

Fase 2: Ottenere il nome del ruolo o le credenziali di accesso

Se desideri che i tuoi utenti accedano ai repository assumendo un ruolo, fornisci ai tuoi utenti l'Amazon Resource Name (ARN) di quel ruolo. In caso contrario, a seconda del modo in cui hai configurato l'accesso, l'utente può ottenere la rotazione delle credenziali in uno dei seguenti modi:

Passaggio 3: installa git-remote-codecommit e configura AWS CLI

È necessario configurare il computer locale per utilizzare le credenziali di accesso installando git-remote-codecommit e configurando un profilo nell' AWS CLI.

  1. Segui le istruzioni in Configurazione per configurare la AWS CLI. Utilizza il comando aws configure per configurare uno o più profili. Prendi in considerazione la creazione di un profilo denominato da utilizzare quando ti connetti ai CodeCommit repository utilizzando credenziali rotanti.

  2. È possibile associare le credenziali al profilo AWS CLI denominato dell'utente in uno dei seguenti modi.

    • Se stai assumendo un ruolo per accedere CodeCommit, configura un profilo denominato con le informazioni necessarie per assumere quel ruolo. Ad esempio, se vuoi assumere un ruolo denominato CodeCommitAccess nell'account Amazon Web Services 1111, puoi configurare un profilo predefinito da utilizzare quando lavori con altre AWS risorse e un profilo denominato da utilizzare quando assumi quel ruolo. I seguenti comandi creano un profilo denominato CodeAccess che presuppone un ruolo denominato CodeCommitAccessIl nome utente. Maria_Garcia è associato alla sessione e il profilo predefinito è impostato come origine delle sue AWS credenziali:

      aws configure set role_arn arn:aws:iam::111111111111:role/CodeCommitAccess --profile CodeAccess aws configure set source_profile default --profile CodeAccess aws configure set role_session_name "Maria_Garcia" --profile CodeAccess

      Per verificare le modifiche, visualizza o modifica manualmente il file ~/.aws/config (per Linux) o il file %UserProfile%.aws\config (per Windows) e rivedi le informazioni sotto il profilo con nome. Il file ad esempio potrebbe essere simile al seguente.

      [default] region = us-east-1 output = json [profile CodeAccess] source_profile = default role_session_name = Maria_Garcia role_arn = arn:aws:iam::111111111111:role/CodeCommitAccess

      Dopo aver configurato il profilo denominato, è possibile clonare i CodeCommit repository con l'git-remote-codecommitutilità utilizzando il profilo denominato. Ad esempio, per clonare un repository denominato MyDemoRepo:

      git clone codecommit://CodeAccess@MyDemoRepo
    • Se utilizzi la federazione delle identità web e OpenID Connect (OIDC), configura un profilo denominato che effettui la AssumeRoleWithWebIdentity API chiamata AWS Security Token Service (AWS STS) per tuo conto per aggiornare le credenziali temporanee. Utilizzate il aws configure set comando o modificate manualmente il ~/.aws/credentials file (per Linux) o il %UserProfile%.aws\credentials file (per Windows) per aggiungere un profilo AWS CLI denominato con i valori di impostazione richiesti. Ad esempio, per creare un profilo che presupponga CodeCommitAccess ruolo e utilizza un file di token di identità web ~/my-credentials/my-token-file:

      [CodeCommitWebIdentity] role_arn = arn:aws:iam::111111111111:role/CodeCommitAccess web_identity_token_file=~/my-credentials/my-token-file role_session_name = Maria_Garcia

    Per ulteriori informazioni, vedere Configurazione AWS Command Line Interface e utilizzo di un IAM ruolo nella Guida per l'AWS Command Line Interface utente. AWS CLI

Fase 4: Accedere ai repository CodeCommit

Supponendo che l'utente abbia seguito le istruzioni per connettersi Connessione a un repository ai CodeCommit repository, l'utente utilizza quindi le funzionalità estese fornite da e git-remote-codecommit Git per chiamare git clone e git pull clonare, inviare ed estrarre i CodeCommit repository a cui ha accesso. git push Ad esempio, per clonare un repository:

git clone codecommit://CodeAccess@MyDemoRepo

I comandi Git commit, push e pull utilizzano la sintassi Git regolare.

Quando l'utente utilizza AWS CLI e specifica il profilo AWS CLI denominato associato alle credenziali di accesso rotanti, vengono restituiti i risultati relativi a quel profilo.