Utilisation d'IAM avec CodeCommit : informations d'identification Git, clés SSH et clés d'accès AWS - AWS Identity and Access Management

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.

Utilisation d'IAM avec CodeCommit : informations d'identification Git, clés SSH et clés d'accès AWS

CodeCommit est un service de contrôle des versions géré qui héberge des référentiels Git privés dans le cloud AWS. Pour utiliser CodeCommit, vous devez configurer votre client Git de manière à ce qu'il puisse communiquer avec les référentiels CodeCommit. Dans le cadre de cette configuration, vous fournissez des informations d'identification IAM que CodeCommit peut utiliser pour vous authentifier. IAM prend en charge CodeCommit avec trois types d'informations d'identification :

  • Les informations d'identification Git, qui sont une paire mot de passe-nom d'utilisateur générée par IAM que vous pouvez utiliser pour communiquer avec des référentiels CodeCommit via HTTPS.

  • Les clés SSH, qui sont une paire de clés publique-privée générée localement que vous pouvez associer à votre utilisateur IAM pour communiquer avec les référentiels CodeCommit via SSH.

  • Les clés d'accès AWS, que vous pouvez utiliser avec l'assistant d'informations d'identification inclus dans la AWS CLI pour communiquer avec les référentiels CodeCommit via HTTPS.

Note

Vous ne pouvez pas utiliser les clés SSH ni les informations d'identification Git pour accéder aux référentiels dans un autre compte AWS. Pour découvrir comment configurer l'accès aux référentiels CodeCommit pour les utilisateurs et groupes IAM dans un autre Compte AWS, veuillez consulter la rubrique Configuration de l'accès intercompte à un référentiel AWS CodeCommit dans le Guide de l'utilisateur AWS CodeCommit.

Pour plus d'informations sur chaque option, consultez les sections suivantes.

Utilisation des informations d'identification Git et HTTPS avec CodeCommit (recommandé)

Avec les informations d'identification Git, vous générez une paire mot de passe-nom utilisateur statique pour votre utilisateur IAM, puis utilisez ces informations d'identification pour les connexions HTTPS. Vous pouvez également utiliser ces informations d'identification avec n'importe quel outil tiers ou environnement de développement intégré (IDE) prenant en charge les informations d'identification Git statiques.

Etant donné que ces informations d'identification sont universelles pour tous les systèmes d'exploitation pris en charge et compatibles avec la plupart des systèmes de gestion des informations d'identification, environnements de développement et autres outils de développement logiciel, c'est la méthode recommandée. Vous pouvez réinitialiser le mot de passe pour les informations d'identification Git à tout moment. Vous pouvez également désactiver les informations d'identification ou les supprimer si vous n'en avez plus besoin.

Note

Pour les informations d'identification Git, vous ne pouvez pas choisir vous-même votre nom d'utilisateur et votre mot de passe. IAM génère ces informations d'identification pour vous afin de garantir qu'elles respectent les normes de sécurité pour AWS et des référentiels sécurisés dans CodeCommit. Vous pouvez télécharger les informations d'identification une seule fois, au moment elles sont générées. Veillez à enregistrer les informations d'identification dans un emplacement sûr. Si nécessaire, vous pouvez réinitialiser le mot de passe à tout moment, mais cela invalidera les connexions configurées avec l'ancien mot de passe. Vous devez reconfigurer les connexions pour qu'elles utilisent le nouveau mot de passe avant de vous connecter.

Pour plus d'informations, consultez les rubriques suivantes :

Note

Le fait de modifier le nom d'un utilisateur IAM après avoir généré des informations d'identification Git ne modifie pas le nom utilisateur des informations d'identification Git. Le nom utilisateur et le mot de passe restent identiques et sont toujours valides.

Pour mettre à jour les informations d'identification spécifiques au service
  1. Créez un second ensemble d'informations d'identification spécifiques au service en plus de l'ensemble actuellement en cours d'utilisation.

  2. Mettez à jour toutes vos applications afin qu'elles utilisent le nouvel ensemble d'informations d'identification et vérifiez que les applications fonctionnent.

  3. Modifiez l'état des informations d'identification d'origine et utilisez Inactif.

  4. Vérifiez que toutes vos applications fonctionnent toujours.

  5. Supprimer les informations d'identification spécifiques au service inactives.

Utilisation de clés SSH et SSH avec CodeCommit

Avec les connexions SSH, vous créez des fichiers de clé publique et privée sur votre ordinateur local, utilisés par Git et CodeCommit pour l'authentification SSH. Vous associez la clé publique à votre utilisateur IAM et stockez la clé privée sur votre ordinateur local. Pour plus d'informations, consultez les rubriques suivantes :

Note

La clé publique doit être codée au format ssh-rsa ou PEM. Le longueur binaire minimale de la clé publique est de 2048 bits et la longueur maximale de 16 384 bits. Cette longueur est distincte de la taille du fichier que vous chargez. Par exemple, vous pouvez générer une clé de 2048 bits et le fichier PEM résultant a une longueur de 1679 octets. Si vous fournissez votre clé publique dans un autre format ou une autre taille, un message d'erreur vous indiquera que le format de clé n'est pas valide.

Utilisation du protocole HTTPS avec l'assistant d'informations d'identification de la AWS CLI et avec CodeCommit

Comme alternative aux connexions HTTPS avec informations d'identification Git, vous pouvez permettre à Git d'utiliser une version signée de manière chiffrée des informations d'identification de votre utilisateur IAM ou le rôle d'instance Amazon EC2 chaque fois que Git doit s'authentifier auprès d'AWS pour interagir avec des référentiels CodeCommit. C'est la seule méthode de connexion aux référentiels CodeCommit qui ne requiert pas d'utilisateur IAM. C'est également la seule méthode qui fonctionne avec un accès fédéré et des informations d'identification temporaires. Pour plus d'informations, consultez les rubriques suivantes :

L'assistant d'informations d'identification de l’interface AWS CLI n'est pas compatible avec d'autres systèmes de gestion des informations d'identification, comme Keychain Access ou le système de gestion des informations d'identification de Windows. Il existe d'autres considérations relatives à la configuration lorsque vous configurez des connexions HTTPS à l'aide de l'assistant d'informations d'identification. Pour plus d'informations, consultez Pour les connexions HTTPS sous Linux, macOS ou Unix avec l'assistant d'informations d'identification de la AWS CLI ou Pour les connexions HTTPS sous Windows avec l'assistant d'informations d'identification de la AWS CLI dans le Guide de l'utilisateur AWS CodeCommit.