Verbindung zuAWS CodeCommit Repositorys mit wechselnden Anmeldeinformationen herstellen - AWS CodeCommit

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verbindung zuAWS CodeCommit Repositorys mit wechselnden Anmeldeinformationen herstellen

Sie können Benutzern Zugriff auf IhreAWS CodeCommit Repositorys gewähren, ohne IAM-Benutzer für sie zu konfigurieren oder einen Zugriffsschlüssel und einen geheimen Schlüssel zu verwenden. Um Berechtigungen Berechtigungen erstellen Sie eine Rolle und definieren Berechtigungen. Wenn eine Verbundidentität authentifiziert wird, wird die Identität der Rolle zugeordnet und erhält die von der Rolle definierten Berechtigungen. Informationen zu Rollen für den Verbund finden Sie unter Erstellen von Rollen für externe Identitätsanbieter im IAM-Benutzerhandbuch. Wenn Sie IAM Identity Center verwenden, konfigurieren Sie einen Berechtigungssatz. Wenn Sie steuern möchten, worauf Ihre Identitäten nach der Authentifizierung zugreifen können, korreliert IAM Identity Center den Berechtigungssatz mit einer Rolle in IAM. Informationen zu Berechtigungssätzen finden Sie unter Berechtigungssätze im AWS IAM Identity Center-Benutzerhandbuch. Sie können auch den rollenbasierten Zugriff für IAM-Benutzer konfigurieren, um aufCodeCommit Repositorys in separaten Amazon Web Services Services-Konten zuzugreifen (eine Technik, die als kontoübergreifender Zugriff bezeichnet wird). Eine schrittweise Anleitung zur Konfiguration des kontoübergreifenden Zugriffs auf ein Repository finden Sie unter Konfiguriere den kontoübergreifenden Zugriff auf ein AWS CodeCommit Repository mithilfe von Rollen.

Sie können den Zugriff für Benutzer konfigurieren, die sich über folgende Methoden authentifizieren möchten oder müssen:

  • Security Assertion Markup Language (SAML)

  • Multifaktor-Authentifizierung (MFA)

  • Verbund

  • Login with Amazon

  • Amazon Cognito

  • Facebook

  • Google

  • OpenID Connect-kompatibler (OIDC) Identitätsanbieter

Anmerkung

Die folgenden Informationen sind nur relevant, wenn die Verbindung mit CodeCommit-Repositorys über git-remote-codecommit oder das AWS CLI-Hilfsprogramm für Anmeldeinformationen hergestellt wird. Da der empfohlene Ansatz für den temporären oder Verbundzugriff auf CodeCommit das Einrichten von git-remote-codecommit ist, enthält dieses Thema Beispiele für dieses Dienstprogramm. Weitere Informationen finden Sie unter Einrichtungsschritte für HTTPS-Verbindungen zuAWS CodeCommitmitgit-remote-codecommit.

Sie können keine SSH- oder Git-Anmeldeinformationen und kein HTTPS verwenden, um mit rotierenden oder temporären Anmeldeinformationen eine Verbindung zu CodeCommit-Repositorys herzustellen.

Sie müssen die folgenden Schritte nicht ausführen, wenn alle der folgenden Bedingungen zutreffen:

Amazon EC2 EC2-Instances, die die oben genannten Anforderungen erfüllen, sind bereits so eingerichtet, dass sie inCodeCommit Ihrem Namen temporäre Zugangsdaten übermitteln.

Anmerkung

Sie könnengit-remote-codecommit Amazon EC2 EC2-Instances konfigurieren und verwenden.

Führen Sie die folgenden Schritte aus, um Benutzern temporär Zugriff auf Ihre CodeCommit-Repositorys zu gewähren.

Schritt 1: Erfüllen der Voraussetzungen

Führen Sie die Einrichtungsschritte aus, um einem Benutzer mit rotierenden Anmeldeinformationen Zugriff auf Ihre CodeCommit-Repositorys zu gewähren:

Unter Authentifizierung und Zugriffskontrolle für AWS CodeCommit erfahren Sie, mit welchen CodeCommit-Berechtigungen Sie dem Benutzer Zugriff erteilen können.

Schritt 2: Abrufen des Rolle oder Anmeldeinformationen

Wenn Sie möchten, dass Ihre Benutzer auf Repositorys zugreifen, indem sie eine Rolle übernehmen, geben Sie Ihren Benutzern den Amazon-Ressourcennamen (ARN) dieser Rolle an. Andernfalls kann der Benutzer je nach Einrichtung des Zugriffs rotierende Anmeldeinformationen auf eine der folgenden Arten abrufen:

Schritt 3: Installierengit-remote-codecommit und konfigurieren Sie denAWS CLI

Sie müssen Ihren lokalen Computer so konfigurieren, dass die Anmeldeinformationen verwendet werden, indem Sie git-remote-codecommit installieren und ein Profil in der AWS CLI konfigurieren.

  1. Folgen Sie den Anweisungen in Einrichtung , um die AWS CLI einzurichten. Verwenden Sie den aws configure-Befehl, um ein oder mehrere Profile zu konfigurieren. Erwägen Sie, ein benanntes Profil zu erstellen, das verwendet werden soll, wenn Sie eine Verbindung mit CodeCommit-Repositorys mithilfe rotierender Anmeldeinformationen herstellen.

  2. Sie können die Anmeldeinformationen nach einem der folgenden Verfahren mit dem benannten AWS CLI-Profil des Benutzers verknüpfen.

    • Wenn Sie eine Rolle für den Zugriff auf CodeCommit übernehmen, konfigurieren Sie ein benanntes Profil mit den Informationen, die für die Übernahme dieser Rolle erforderlich sind. Wenn Sie beispielsweise eine Rolle annehmen möchten, die CodeCommitAccessim Amazon Web Services Services-Konto 1111111111 benannt ist, können Sie ein Standardprofil für die Arbeit mit anderenAWS Ressourcen und ein benanntes Profil konfigurieren, das verwendet wird, wenn Sie diese Rolle übernehmen. Mit den folgenden Befehlen wird ein benanntes Profil erstellt CodeAccess, das eine benannte Rolle annimmt CodeCommitAccess. Der Benutzername Maria_Garcia ist mit der Sitzung verknüpft und das Standardprofil wird als Quelle derAWS Anmeldeinformationen festgelegt:

      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

      Wenn Sie die Änderungen überprüfen möchten, können Sie die ~/.aws/config-Datei (für Linux) oder die %UserProfile%.aws\config-Datei (für Windows) manuell anzeigen oder bearbeiten und die Informationen unter dem benannten Profil überprüfen. Zum Beispiel ähnelt Ihre Datei möglicherweise dem Folgenden:

      [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

      Nachdem Sie Ihr benanntes Profil konfiguriert haben, können Sie CodeCommit-Repositorys mit dem git-remote-codecommit-Dienstprogramm mithilfe des benannten Profils klonen. Beispielsweise löschen Sie das Repository namens MyDemoRepo wie folgt:

      git clone codecommit://CodeAccess@MyDemoRepo
    • Wenn Sie Web-Identitätsverbund und OpenID Connect (OIDC) verwenden, konfigurieren Sie ein benanntes Profil, das die AWS Security Token Service (AWS STS) AssumeRoleWithWebIdentity-API in Ihrem Namen aufruft, um temporäre Anmeldeinformationen zu aktualisieren. Verwenden Sie den aws configure set-Befehl oder bearbeiten Sie die ~/.aws/credentials-Datei (für Linux) oder die %UserProfile%.aws\credentials-Datei (für Windows) manuell, um ein benanntes AWS CLI-Profil mit den erforderlichen Einstellungswerten hinzuzufügen. Um beispielsweise ein Profil zu erstellen, das die CodeCommitAccessRolle übernimmt und eine Web-Identitätstoken-Datei ~/ my-credentials/verwendetmy-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

    Weitere Informationen finden Sie unter KonfigurationAWS Command Line Interface und Verwendung einer IAM-RolleAWS CLI imAWS Command Line Interface Benutzerhandbuch.

Schritt 4: Zugriff auf dieCodeCommit Repositorys

Nachdem der Benutzer die Anweisungen unter Herstellen einer Verbindung mit einem Repository ausgeführt hat, um eine Verbindung mit den CodeCommit-Repositorys herzustellen, verwendet er die von git-remote-codecommit und Git bereitgestellte erweiterte Funktionalität, um git clone, git push und git pull aufzurufen, um die CodeCommit-Repositorys, auf die er temporären Zugriff hat, zu klonen oder Push- und Pull-Übertragungen durchzuführen. Beispiel zum Klonen eines Repositorys:

git clone codecommit://CodeAccess@MyDemoRepo

Git-Commit-, Push- und Pull-Befehle verwenden reguläre Git-Syntax.

Wenn der Benutzer in der AWS CLI das benannte AWS CLI-Profil angibt, das den rotierenden Anmeldeinformationen zugewiesen ist, werden die Ergebnisse zurückgegeben, die für dieses Profil gültig sind.