Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Connexion à AWS CodeCommit référentiels avec informations d'identification rotatives
Vous pouvez autoriser les utilisateurs à accéder à vos AWS CodeCommit référentiels sans configurer d'utilisateurs IAM pour eux ni utiliser de clé d'accès et de clé secrète. Pour attribuer des autorisations à une identité fédérée, vous devez créer un rôle et définir des autorisations pour ce rôle. Quand une identité externe s’authentifie, l’identité est associée au rôle et reçoit les autorisations qui sont définies par celui-ci. Pour obtenir des informations sur les rôles pour la fédération, consultez Création d’un rôle pour un fournisseur d’identité tiers (fédération) dans le Guide de l’utilisateur IAM. Si vous utilisez IAM Identity Center, vous configurez un jeu d’autorisations. IAM Identity Center met en corrélation le jeu d’autorisations avec un rôle dans IAM afin de contrôler à quoi vos identités peuvent accéder après leur authentification. Pour plus d’informations sur les jeux d’autorisations, consultez Jeux d’autorisations dans le Guide de l’utilisateur AWS IAM Identity Center . Vous pouvez également configurer l'accès basé sur les rôles pour que les utilisateurs IAM puissent accéder aux CodeCommit référentiels dans des comptes Amazon Web Services distincts (technique connue sous le nom d'accès entre comptes). Pour connaître la procédure permettant de configurer l'accès entre comptes à un référentiel, consultez Configurer l'accès multicompte à un AWS CodeCommit référentiel utilisant des rôles.
Vous pouvez configurer l'accès pour les utilisateurs qui veulent ou doivent s'authentifier via des méthodes telles que les suivantes :
-
Security Assertion Markup Language (SAML)
-
Multi-factor authentification (MFA)
-
Fédération
-
Login with Amazon
-
Amazon Cognito
-
Facebook
-
Google
-
Fournisseur d'identité compatible avec OpenID Connect (OIDC)
Note
Les informations suivantes concernent uniquement l'utilisation de git-remote-codecommit ou l'assistant AWS CLI d'identification pour se connecter à CodeCommit des référentiels. L'approche recommandée pour l'accès temporaire ou fédéré étant la configurationgit-remote-codecommit, cette rubrique fournit des exemples utilisant cet utilitaire. CodeCommit Pour plus d’informations, consultez Étapes de configuration pour les connexions HTTPS à AWS CodeCommit avec git-remote-codecommit.
Vous ne pouvez pas utiliser les informations d'identification SSH ou Git ni le protocole HTTPS pour vous connecter à CodeCommit des référentiels avec des informations d'accès temporaires ou temporaires.
N'effectuez pas ces étapes si toutes les conditions suivantes sont vérifiées :
-
Vous êtes connecté à une instance Amazon EC2.
-
Vous utilisez Git et HTTPS avec l'assistant AWS CLI d'identification pour vous connecter à des référentiels depuis l'instance Amazon EC2. CodeCommit
-
L'instance Amazon EC2 possède un profil d'instance IAM attaché qui contient les autorisations d'accès décrites dans Pour les connexions HTTPS sous Linux, macOS ou Unix avec l'assistant AWS CLI d'identification ou. Pour les connexions HTTPS sous Windows avec l'assistant AWS CLI d'identification
-
Vous avez installé et configuré l'assistant d'identification Git sur l'instance Amazon EC2, comme décrit dans ou. Pour les connexions HTTPS sous Linux, macOS ou Unix avec l'assistant AWS CLI d'identification Pour les connexions HTTPS sous Windows avec l'assistant AWS CLI d'identification
Les instances Amazon EC2 qui répondent aux exigences précédentes sont déjà configurées pour communiquer des informations d'accès temporaires à CodeCommit en votre nom.
Note
Vous pouvez configurer et utiliser git-remote-codecommit sur les instances Amazon EC2.
Pour donner aux utilisateurs un accès temporaire à vos CodeCommit référentiels, procédez comme suit.
Étape 1 : Exécuter les prérequis
Effectuez les étapes de configuration pour permettre à un utilisateur d'accéder à vos CodeCommit référentiels en utilisant des informations d'identification rotatives :
-
Pour l'accès entre comptes, consultez Procédure pas à pas : Délégation de l'accès entre comptes Amazon Web Services à l'aide de rôles IAM et. Configurer l'accès multicompte à un AWS CodeCommit référentiel utilisant des rôles
-
Pour le SAML et la fédération, consultez les sections Utilisation du système d'authentification de votre organisation pour accorder l'accès aux AWS ressources et À propos de la fédération basée sur AWS STS SAML 2.0.
-
Pour l'authentification multifacteur, consultez la section Utilisation de périphériques Multi-Factor d'authentification (MFA) avec AWS et création d'informations d'identification de sécurité temporaires pour permettre l'accès des utilisateurs IAM.
-
Pour vous connecter avec Amazon, Amazon Cognito, Facebook, Google ou tout autre fournisseur OIDC-compatible d'identité, consultez À propos de AWS STS Web Identity Federation.
Utilisez les informations fournies Authentification et contrôle d'accès pour AWS CodeCommit pour spécifier les CodeCommit autorisations que vous souhaitez accorder à l'utilisateur.
Étape 2 : Obtenir le nom du rôle ou les informations d'accès
Si vous souhaitez que vos utilisateurs accèdent aux référentiels en assumant un rôle, fournissez-leur l'ARN (Amazon Resource Name) de ce rôle. Sinon, selon la façon dont vous configurez l'accès, l'utilisateur peut obtenir des informations d'identification rotatives de l'une des manières suivantes :
-
Pour accéder à plusieurs comptes, appelez la commande AWS CLI assume-role ou appelez l'API. AWS STS AssumeRole
-
Pour SAML, appelez la commande AWS CLI https://docs.aws.amazon.com/cli/latest/reference/sts/assume-role-with-saml.html assume-role-with-saml ou l'API. AWS STS AssumeRoleWithSAML
-
Pour la fédération, appelez les commandes AWS CLI assume-role ou get-federation-token ou les API ou. AWS STS AssumeRole GetFederationToken
-
Pour MFA, appelez la commande AWS CLI get-session-token ou l'API. AWS STS GetSessionToken
-
Pour vous connecter avec Amazon, Amazon Cognito, Facebook, Google ou tout autre fournisseur OIDC-compatible d'identité, appelez la commande AWS CLI https://docs.aws.amazon.com/cli/latest/reference/sts/assume-role-with-web-identity.html assume-role-with-web-identity ou l'API. AWS STS AssumeRoleWithWebIdentity
Étape 3 : installez git-remote-codecommit et configurez AWS CLI
Vous devez configurer votre ordinateur local pour qu'il utilise les informations d'identification d'accès en installant git-remote-codecommit
-
Suivez les instructions de Configuration pour configurer l' AWS CLI. Utilisez la commande aws configure pour configurer un ou plusieurs profils. Envisagez de créer un profil nommé à utiliser lorsque vous vous connectez à des CodeCommit référentiels à l'aide d'informations d'identification rotatives.
-
Vous pouvez associer les informations d'identification au profil AWS CLI nommé de l'utilisateur de l'une des manières suivantes.
-
Si vous assumez un rôle auquel accéder CodeCommit, configurez un profil nommé avec les informations requises pour assumer ce rôle. Par exemple, si vous souhaitez assumer un rôle nommé
CodeCommitAccessdans le compte Amazon Web Services 111111111111, vous pouvez configurer un profil par défaut à utiliser lorsque vous travaillez avec d'autres AWS ressources et un profil nommé à utiliser lorsque vous assumez ce rôle. Les commandes suivantes créent un profil nomméCodeAccessqui assume un rôle nomméCodeCommitAccess. Le nom d'utilisateurMaria_Garciaest associé à la session et le profil par défaut est défini comme source de ses AWS informations d'identification :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" --profileCodeAccessSi vous souhaitez vérifier les modifications, affichez ou modifiez manuellement le fichier
~/.aws/config(pour Linux) ou le fichier%UserProfile%.aws\config(pour Windows) et examinez les informations sous le profil nommé. Votre fichier peut ressembler à l'exemple suivant :[default] region = us-east-1 output = json [profile CodeAccess] source_profile = default role_session_name = Maria_Garcia role_arn = arn:aws:iam::111111111111:role/CodeCommitAccessAprès avoir configuré votre profil nommé, vous pouvez ensuite cloner des référentiels CodeCommit avec l'utilitaire git-remote-codecommit à l'aide du profil nommé. Par exemple, pour cloner un référentiel nommé
MyDemoRepo:git clone codecommit://CodeAccess@MyDemoRepo -
Si vous utilisez la fédération d'identités Web et OpenID Connect (OIDC), configurez un profil nommé qui effectue l'appel d'
AssumeRoleWithWebIdentityAPI AWS Security Token Service (AWS STS) en votre nom pour actualiser les informations d'identification temporaires. Utilisez la aws configure set commande ou modifiez manuellement le~/.aws/credentialsfichier (pour Linux) ou le%UserProfile%.aws\credentialsfichier (pour Windows) pour ajouter un profil AWS CLI nommé avec les valeurs de réglage requises. Par exemple, pour créer un profil qui assume leCodeCommitAccessrôle et utilise un fichier de jeton d'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
Pour plus d'informations, consultez la section Configuration AWS Command Line Interface et utilisation d'un rôle IAM AWS CLI dans le Guide de l'AWS Command Line Interface utilisateur.
-
Étape 4 : Accédez aux CodeCommit référentiels
En supposant que votre utilisateur ait suivi les instructions Connexion à un référentiel pour se connecter CodeCommit aux référentiels, il utilise ensuite les fonctionnalités étendues fournies par git-remote-codecommit Git git pull pour appeler git clonegit push, cloner, envoyer et extraire des CodeCommit référentiels auxquels il a accès. Par exemple, pour cloner un référentiel :
git clone codecommit://CodeAccess@MyDemoRepo
Les commandes Git commit, push et pull utilisent la syntaxe Git régulière.
Lorsque l'utilisateur utilise AWS CLI et spécifie le profil AWS CLI nommé associé aux informations d'accès rotatives, les résultats limités à ce profil sont renvoyés.