AWS CodeCommit n'est plus disponible pour les nouveaux clients. Les clients existants de AWS CodeCommit peuvent continuer à utiliser le service normalement. En savoir plus »
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.
Étapes de configuration des connexions HTTPS aux AWS CodeCommit référentiels sous Linux, macOS ou Unix à l'aide de l'assistant d'identification AWS CLI
Avant de pouvoir vous connecter AWS CodeCommit pour la première fois, vous devez effectuer les étapes de configuration initiales. Pour la plupart des utilisateurs, le plus simple est de suivre la procédure indiquée à la section Pour les utilisateurs HTTPS utilisant les informations d'identification Git. Toutefois, si vous souhaitez vous connecter à CodeCommit l'aide d'un compte root, d'un accès fédéré ou d'informations d'identification temporaires, vous pouvez utiliser l'assistant d'identification inclus dans le. AWS CLI
Note
Bien que l'assistant d'identification soit une méthode prise en charge pour se connecter à CodeCommit l'aide d'un accès fédéré, d'un fournisseur d'identité ou d'informations d'identification temporaires, la méthode recommandée consiste à installer et à utiliser l'utilitaire. git-remote-codecommit Pour de plus amples informations, veuillez consulter Étapes de configuration pour les connexions HTTPS AWS CodeCommit avec git-remote-codecommit.
Rubriques
Étape 1 : Configuration initiale pour CodeCommit
Suivez ces étapes pour configurer un compte Amazon Web Services, créer et configurer un utilisateur IAM, puis installer le AWS CLI.
Pour créer et configurer un utilisateur IAM pour accéder CodeCommit
Créez un compte Amazon Web Services en accédant à http://aws.amazon.com
et en choisissant S'inscrire. Créez un utilisateur IAM ou utilisez-en un existant dans votre compte Amazon Web Services. Assurez-vous que vous disposez d'un identifiant de clé d'accès et d'une clé d'accès secrète associés à cet utilisateur IAM. Pour plus d'informations, consultez Création d'un utilisateur IAM dans votre compte Amazon Web Services.
Note
CodeCommit nécessite AWS Key Management Service. Si vous utilisez un utilisateur IAM existant, assurez-vous qu'aucune politique attachée à cet utilisateur ne refuse expressément les AWS KMS actions requises par CodeCommit. Pour de plus amples informations, veuillez consulter AWS KMS et chiffrement.
Connectez-vous à la console IAM AWS Management Console et ouvrez-la à https://console.aws.amazon.com/iam/
l'adresse. -
Dans la console IAM, dans le volet de navigation, choisissez Utilisateurs, puis choisissez l'utilisateur IAM que vous souhaitez configurer pour CodeCommit l'accès.
Sous l'onglet Autorisations, choisissez Ajouter des autorisations.
-
Pour Accorder des autorisations, choisissez Attacher directement les stratégies existantes.
Dans la liste des politiques, sélectionnez AWSCodeCommitPowerUserou une autre politique gérée pour CodeCommit l'accès. Pour de plus amples informations, veuillez consulter AWS politiques gérées pour CodeCommit.
Après avoir sélectionné la politique que vous souhaitez joindre, choisissez Next : Review pour consulter la liste des politiques à associer à l'utilisateur IAM. Si la liste est correcte, choisissez Add permissions.
Pour plus d'informations sur les politiques CodeCommit gérées et le partage de l'accès aux référentiels avec d'autres groupes et utilisateurs, consultez Partage d'un référentiel etAuthentification et contrôle d'accès pour AWS CodeCommit.
Pour installer et configurer le AWS CLI
-
Sur votre ordinateur local, téléchargez et installez le AWS CLI. C'est une condition préalable pour interagir avec CodeCommit depuis la ligne de commande. Nous vous recommandons d'installer AWS CLI la version 2. Il s'agit de la version majeure la plus récente de AWS CLI et prend en charge toutes les dernières fonctionnalités. Il s'agit de la seule version AWS CLI qui prend en charge l'utilisation d'un compte root, d'un accès fédéré ou d'informations d'identification temporaires avecgit-remote-codecommit.
Pour plus d'informations, voir Configuration avec l'interface de ligne de AWS commande.
Note
CodeCommit fonctionne uniquement avec AWS CLI les versions 1.7.38 et ultérieures. Il est recommandé d'installer ou de mettre AWS CLI à niveau la dernière version disponible. Pour déterminer la version AWS CLI que vous avez installée, exécutez la aws --version commande.
Pour mettre à niveau une ancienne version du AWS CLI vers la dernière version, voir Installation du AWS Command Line Interface.
-
Exécutez cette commande pour vérifier que les CodeCommit commandes correspondantes AWS CLI sont installées.
aws codecommit help
Cette commande renvoie une liste de CodeCommit commandes.
-
Configurez le AWS CLI avec un profil en utilisant la configure commande, comme suit :.
aws configure
Lorsque vous y êtes invité, spécifiez la AWS clé d'accès et la clé d'accès AWS secrète de l'utilisateur IAM à CodeCommit utiliser. Assurez-vous également de spécifier l' Région AWS endroit où se trouve le référentiel, par exemple
us-east-2
. Lorsque vous êtes invité à saisir le format de sortie par défaut, entrezjson
. Par exemple, si vous configurez un profil pour un utilisateur IAM :AWS Access Key ID [None]:
Type your IAM user AWS access key ID here, and then press Enter
AWS Secret Access Key [None]:Type your IAM user AWS secret access key here, and then press Enter
Default region name [None]:Type a supported region for CodeCommit here, and then press Enter
Default output format [None]:Type
jsonhere, and then press Enter
Pour plus d'informations sur la création et la configuration de profils à utiliser avec le AWS CLI, consultez les rubriques suivantes :
Pour vous connecter à un référentiel ou à une ressource d'un autre Région AWS, vous devez le reconfigurer AWS CLI avec le nom de région par défaut. Les noms de région par défaut pris en charge CodeCommit incluent :
-
us-east-2
-
us-east-1
-
eu-west-1
-
us-west-2
-
ap-northeast-1
-
ap-southeast-1
-
ap-southeast-2
-
ap-southeast-3
-
me-central-1
-
eu-central-1
-
ap-northeast-2
-
sa-east-1
-
us-west-1
-
eu-west-2
-
ap-south-1
-
ap-south-1
-
ca-central-1
-
us-gov-west-1
-
us-gov-east-1
-
eu-north-1
ap-east-1
me-south-1
cn-north-1
cn-northwest-1
eu-south-1
ap-northeast-3
af-south-1
il-central-1
Pour plus d'informations sur CodeCommit et Région AWS, voirRégions et points de terminaison de connexion Git. Pour plus d'informations sur l'IAM, les clés d'accès et les clés secrètes, voir Comment obtenir des informations d'identification ? et Gestion des clés d'accès pour les utilisateurs IAM. Pour plus d'informations sur les profils AWS CLI et, consultez la section Profils nommés.
-
Étape 2 : Installation de Git
Pour utiliser des fichiers, des validations et d'autres informations dans CodeCommit des référentiels, vous devez installer Git sur votre machine locale. CodeCommit prend en charge les versions 1.7.9 et ultérieures de Git. La version 2.28 de Git permet de configurer le nom de branche pour les validations initiales. Nous vous recommandons d'utiliser une version récente de Git.
Pour installer Git, nous recommandons des sites Web tels que Git Downloads
Note
Git est une plateforme évolutive et régulièrement mise à jour. Parfois, une modification de fonctionnalité peut affecter son fonctionnement CodeCommit. Si vous rencontrez des problèmes avec une version spécifique de Git CodeCommit, consultez les informations contenues dansRésolution des problèmes.
Étape 3 : configurer l'assistant d'identification
-
Depuis le terminal, utilisez Git pour exécutergit config, en spécifiant l'utilisation de l'assistant d'identification Git avec le profil AWS d'identification et en activant l'assistant d'identification Git pour envoyer le chemin vers les référentiels :
git config --global credential.helper '!aws codecommit credential-helper $@' git config --global credential.UseHttpPath true
Astuce
L'assistant d'identification utilise le profil AWS d'identification par défaut ou le rôle d'instance Amazon EC2 . Vous pouvez spécifier un profil à utiliser, comme
CodeCommitProfile
, si vous avez créé un profil d'informations d'identification AWS spécifique à utiliser avec CodeCommit :git config --global credential.helper '!aws --profile
CodeCommitProfile
codecommit credential-helper $@'Si le nom de votre profil contient des espaces, veillez à placer le nom entre guillemets (").
Vous pouvez configurer des profils par référentiel, et non globalement, en utilisant
--local
au lieu de--global
.L'assistant d'informations d'identification Git écrit la valeur suivante dans
~/.gitconfig
:[credential] helper = !aws --profile CodeCommitProfile codecommit credential-helper $@ UseHttpPath = true
Important
Si vous souhaitez utiliser un autre utilisateur IAM sur le même ordinateur local pour CodeCommit, vous devez exécuter à nouveau la git config commande et spécifier un profil d' AWS identification différent.
-
Exécutez git config --global --edit pour vérifier que la valeur précédente a été écrite dans
~/.gitconfig
. Si la commande aboutit, vous devez voir la valeur précédente (en plus des valeurs qui peuvent déjà exister dans le fichier de configuration globale Git). Pour quitter, vous devez généralement saisir:q
et appuyer sur Entrée.Si vous rencontrez des problèmes après avoir configuré l'assistant d'informations d'identification, consultez Résolution des problèmes.
Important
Si vous utilisez macOS, suivez les étapes ci-dessous pour vous assurer que l'assistant d'identification est correctement configuré.
-
Si vous utilisez macOS, utilisez le protocole HTTPS pour vous connecter à un CodeCommit référentiel. Lorsque vous vous connectez à un CodeCommit référentiel via HTTPS pour la première fois, les accès suivants échouent au bout de 15 minutes environ. La version Git par défaut sur macOS utilise l'utilitaire Keychain Access pour stocker les informations d'identification. Pour des raisons de sécurité, le mot de passe généré pour accéder à votre CodeCommit référentiel est temporaire, de sorte que les informations d'identification stockées dans le trousseau cessent de fonctionner au bout de 15 minutes environ. Pour éviter que ces informations d'identification expirées soient utilisées, vous devez effectuer l'une des actions suivantes :
-
Installez une version de Git qui n'utilise pas le trousseau (keychain) par défaut.
-
Configurez l'utilitaire Keychain Access pour qu'il ne fournisse pas d'informations d'identification pour les CodeCommit référentiels.
-
Ouvrez l'utilitaire Keychain Access. (Vous pouvez utiliser l'outil de recherche pour le localiser).
-
Recherchez
git-codecommit.us-east-2.amazonaws.com
. Mettez la ligne en surbrillance, ouvrez le menu contextuel ou cliquez dessus avec le bouton droit, puis choisissez Get Info. -
Choisissez l'onglet Access Control.
-
Dans Confirm before allowing access, choisissez
git-credential-osxkeychain
, puis sélectionnez le signe moins pour le supprimer de la liste.Note
Après avoir supprimé
git-credential-osxkeychain
de la liste, vous verrez un message contextuel chaque fois que vous exécuterez une commande Git. Choisissez Deny pour continuer. Si vous trouvez les fenêtres contextuelles trop perturbatrices, voici quelques options alternatives :-
Connectez-vous à CodeCommit l'aide du protocole SSH au lieu du protocole HTTPS. Pour de plus amples informations, veuillez consulter Pour les connexions SSH sous Linux, macOS ou Unix.
-
Dans l'utilitaire Keychain Access, sous l'onglet Access Control pour
git-codecommit.us-east-2.amazonaws.com
, choisissez l'option Allow all applications to access this item (access to this item is not restricted). Cela permet d'éviter les fenêtres contextuelles, mais les informations d'identification finissent par expirer (en moyenne, environ 15 minutes) et vous voyez un message d'erreur 403. Dans ce cas, vous devez supprimer l'élément keychain pour restaurer les fonctionnalités. -
Pour de plus amples informations, veuillez consulter Git pour macOS : j'ai correctement configuré l'assistant d'identification, mais l'accès à mon référentiel me est maintenant refusé (403).
-
-
Étape 4 : Connexion à la CodeCommit console et clonage du référentiel
Si un administrateur vous a déjà envoyé le nom et les informations de connexion du CodeCommit référentiel, vous pouvez ignorer cette étape et cloner le référentiel directement.
Pour se connecter à un CodeCommit référentiel
Ouvrez la CodeCommit console sur https://console.aws.amazon.com/codesuite/codecommit/home
. -
Dans le sélecteur de région, choisissez l' Région AWS endroit où le référentiel a été créé. Les référentiels sont spécifiques à un Région AWS. Pour de plus amples informations, veuillez consulter Régions et points de terminaison de connexion Git.
-
Trouvez le référentiel auquel vous souhaitez vous connecter dans la liste et choisissez-le. Choisissez Clone URL (Cloner URL), puis choisissez le protocole que vous souhaitez utiliser lors du clonage ou de la connexion au référentiel. Cette opération copie l'URL de clonage.
Copiez l'URL HTTPS si vous utilisez les informations d'identification Git avec votre utilisateur IAM ou l'assistant d'identification inclus dans le. AWS CLI
Copiez l'URL HTTPS (GRC) si vous utilisez la commande git-remote-codecommit sur votre ordinateur local.
Copiez l'URL SSH si vous utilisez une paire de clés publique/privée SSH avec votre utilisateur IAM.
Note
Si vous voyez une page de bienvenue au lieu d'une liste de référentiels, aucun référentiel n'est associé à votre AWS compte dans l' Région AWS endroit où vous êtes connecté. Pour créer un référentiel, consultez Création d'un AWS CodeCommit référentiel ou suivez les étapes du didacticiel Commencer à utiliser Git et CodeCommit.
-
Ouvrez un terminal et exécutez la commande git clone avec l'URL HTTPS que vous avez copiée. Par exemple, pour cloner un dépôt nommé
MyDemoRepo
d'après un dépôt local nommémy-demo-repo
dans la région USA Est (Ohio) :git clone https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
Étapes suivantes
Vous réunissez toutes les conditions prérequises. Suivez les étapes décrites Commencer avec CodeCommit pour commencer à utiliser CodeCommit.