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 a AWS CodeCommit repository con credenziali rotanti
Puoi consentire agli utenti di accedere ai tuoi AWS CodeCommit repository senza configurare gli utenti IAM per loro o utilizzare una chiave di accesso e una chiave segreta. Per assegnare le autorizzazioni a un'identità federata, si crea un ruolo e si definiscono 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 ulteriori informazioni sulla federazione dei ruoli, consulta Creare un ruolo per un provider di identità di terze parti (federazione) nella Guida per l'utente IAM. Se si utilizza IAM Identity Center, configurare un set di autorizzazioni. IAM Identity Center mette in correlazione il set di autorizzazioni con un ruolo in IAM per controllare a cosa possono accedere le identità dopo l’autenticazione. Per informazioni sui set di autorizzazioni, consulta Set di autorizzazioni nella Guida per l’utente di Centro identità AWS IAM . Puoi anche configurare l'accesso basato sui ruoli per consentire agli utenti IAM 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 più 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)
-
Multi-factor autenticazione (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 al AWS CLI credenziale helper per la connessione ai repository. CodeCommit Poiché l'approccio consigliato per l'accesso temporaneo o federato CodeCommit è la configurazionegit-remote-codecommit, questo argomento fornisce esempi di utilizzo di tale utilità. Per ulteriori informazioni, consulta Procedure di configurazione per le connessioni HTTPS a AWS CodeCommit con git-remote-codecommit.
Non è possibile utilizzare credenziali SSH o Git e HTTPS per connettersi ai CodeCommit repository con credenziali di accesso temporanee o a rotazione.
Non è necessario completare queste fasi se sono soddisfatti tutti i seguenti requisiti:
-
Hai effettuato l'accesso a un'istanza Amazon EC2.
-
Stai utilizzando Git e HTTPS con l'helper per le AWS CLI credenziali per connetterti dall'istanza Amazon EC2 ai repository. CodeCommit
-
L'istanza Amazon EC2 ha un profilo di istanza IAM allegato che contiene le autorizzazioni di accesso descritte in o. Per connessioni HTTPS su Linux, macOS o Unix con l'helper per le credenziali AWS CLI Per le connessioni HTTPS su Windows con l'helper per le AWS CLI credenziali
-
Hai installato e configurato l'helper per le credenziali Git sull'istanza Amazon EC2, come descritto in o. Per connessioni HTTPS su Linux, macOS o Unix con l'helper per le credenziali AWS CLI Per le connessioni HTTPS su Windows con l'helper per le AWS CLI credenziali
Le istanze Amazon EC2 che soddisfano i requisiti precedenti sono già configurate per comunicare le credenziali di accesso temporanee a tuo nome. CodeCommit
Nota
Puoi configurare e utilizzare git-remote-codecommit su istanze Amazon EC2.
Per concedere 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:
-
Per l'accesso tra più account, consulta Procedura dettagliata: delegare l'accesso tra account Amazon Web Services utilizzando i ruoli IAM e. Configura l'accesso tra più account a un AWS CodeCommit repository utilizzando i ruoli
-
Per SAML e federazione, consulta Utilizzo del sistema di autenticazione dell'organizzazione per concedere l'accesso alle AWS risorse e Informazioni sulla federazione basata su AWS STS SAML 2.0.
-
Per l'MFA, vedi Utilizzo dei dispositivi di Multi-Factor autenticazione (MFA) con AWS e creazione di credenziali di sicurezza temporanee per abilitare l'accesso per gli utenti IAM.
-
Per accedere con Amazon, Amazon Cognito, Facebook, Google o qualsiasi provider di OIDC-compatible identità, consulta Informazioni su AWS STS Web Identity Federation.
Usa le informazioni in esso contenute Autenticazione e controllo degli accessi per AWS CodeCommit per specificare le CodeCommit autorizzazioni che desideri concedere all'utente.
Passaggio 2: ottenere il nome del ruolo o le credenziali di accesso
Se desideri che gli utenti accedano ai repository assumendo un ruolo, fornisci agli utenti l'Amazon Resource Name (ARN) del 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:
-
Per l'accesso tra più account, chiama il comando AWS CLI assume-role o chiama l'API. AWS STS AssumeRole
-
Per SAML, chiama il comando AWS CLI assume-role-with-saml o l'API. AWS STS AssumeRoleWithSAML
-
Per la federazione, chiama i comandi assume-role o get-federation-token o le API or. AWS CLI https://docs.aws.amazon.com/cli/latest/reference/sts/assume-role.html https://docs.aws.amazon.com/cli/latest/reference/sts/get-federation-token.html AWS STS AssumeRole GetFederationToken
-
Per l'MFA, chiama il comando get-session-token o l'API. AWS CLI https://docs.aws.amazon.com/cli/latest/reference/sts/get-session-token.html AWS STS GetSessionToken
-
Per accedere con Amazon, Amazon Cognito, Facebook, Google o qualsiasi provider di identità, chiama il comando OIDC-compatible assume-role-with-web-identity o l' AWS CLI API. AWS STS AssumeRoleWithWebIdentity
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
-
Segui le istruzioni in Configurazione per configurare la AWS CLI. Utilizza il comando aws configure per configurare uno o più profili. Valuta la possibilità di creare un profilo denominato da utilizzare quando ti connetti ai repository utilizzando credenziali rotanti CodeCommit .
-
È 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 desideri assumere un ruolo denominato
CodeCommitAccessnell'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 denominatoCodeAccessche assume un ruolo denominato.CodeCommitAccessIl nome utenteMaria_Garciaè associato alla sessione e il profilo predefinito è impostato come origine delle relative AWS credenziali:aws configure set role_arn arn:aws:iam::111111111111:role/CodeCommitAccess--profileCodeAccessaws configure set source_profile default --profileCodeAccessaws configure set role_session_name "Maria_Garcia" --profileCodeAccessPer 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/CodeCommitAccessDopo aver configurato il profilo con nome, è possibile clonare i repository CodeCommit con l'utilità git-remote-codecommit utilizzando il profilo con nome. Ad esempio, per clonare un repository con nome
MyDemoRepo:git clone codecommit://CodeAccess@MyDemoRepo -
Se utilizzi la federazione delle identità web e OpenID Connect (OIDC), configura un profilo denominato che effettui la chiamata
AssumeRoleWithWebIdentityAPI Servizio di token di sicurezza AWS (AWS STS) per tuo conto per aggiornare le credenziali temporanee. Usa il aws configure set comando o modifica manualmente il~/.aws/credentialsfile (per Linux) o il%UserProfile%.aws\credentialsfile (per Windows) per aggiungere un profilo AWS CLI denominato con i valori di impostazione richiesti. Ad esempio, per creare un profilo che assuma ilCodeCommitAccessruolo e utilizza un file di token di identità web ~/:my-credentials/my-token-file[CodeCommitWebIdentity] role_arn = arn:aws:iam::111111111111:role/CodeCommitAccessweb_identity_token_file=~/role_session_name = Maria_Garciamy-credentials/my-token-file
Per ulteriori informazioni, consulta Configurazione AWS Command Line Interface e utilizzo di un ruolo IAM nella Guida per l' AWS CLIutente. AWS Command Line Interface
-
Fase 4: Accedere ai repository CodeCommit
Supponendo che l'utente abbia seguito le istruzioni per connettersi Connessione a un repository ai CodeCommit repository, utilizza quindi la funzionalità estesa fornita da Git git-remote-codecommit e Git per chiamare git clone e git pull clonare, inviare ed estrarre dai 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.