View a markdown version of this page

Verbindung herstellen mit AWS CodeCommit Repositorys mit wechselnden Anmeldeinformationen - 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 herstellen mit AWS CodeCommit Repositorys mit wechselnden Anmeldeinformationen

Sie können Benutzern Zugriff auf Ihre AWS CodeCommit Repositorys gewähren, ohne IAM-Benutzer für sie zu konfigurieren oder einen Zugriffsschlüssel und einen geheimen Schlüssel zu verwenden. Um einer föderierten Identität Berechtigungen zuzuweisen, erstellen Sie eine Rolle und definieren die Berechtigungen für die Rolle. Wird eine Verbundidentität authentifiziert, so 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 (Verbund) 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 auf CodeCommit Repositorys in separaten Amazon Web 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 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)

  • Multi-factor Authentifizierung (MFA)

  • Verbund

  • Login with Amazon

  • Amazon Cognito

  • Facebook

  • Google

  • OpenID Connect-kompatibler (OIDC) Identitätsanbieter

Anmerkung

Die folgenden Informationen beziehen sich nur auf die Verwendung von git-remote-codecommit oder des AWS CLI Credential Helpers, um eine Verbindung zu CodeCommit Repositorys herzustellen. Da die empfohlene Vorgehensweise für temporären oder Verbundzugriff die Einrichtung CodeCommit istgit-remote-codecommit, finden Sie in diesem Thema Beispiele für die Verwendung dieses Hilfsprogramms. Weitere Informationen finden Sie unter Einrichtungsschritte für HTTPS-Verbindungen zu AWS CodeCommit mit git-remote-codecommit.

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

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

Amazon EC2-Instances, die die oben genannten Anforderungen erfüllen, sind bereits so eingerichtet, dass sie temporäre Zugangsdaten in Ihrem Namen CodeCommit an Sie weitergeben.

Anmerkung

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

Gehen Sie wie folgt vor, um Benutzern temporären Zugriff auf Ihre CodeCommit Repositorys zu gewähren.

Schritt 1: Erfüllen der Voraussetzungen

Führen Sie die Einrichtungsschritte durch, um einem Benutzer mithilfe rotierender Anmeldeinformationen Zugriff auf Ihre CodeCommit Repositorys zu gewähren:

Verwenden Sie die Informationen inAuthentifizierung und Zugriffskontrolle für AWS CodeCommit, um die CodeCommit Berechtigungen anzugeben, die Sie dem Benutzer gewähren möchten.

Schritt 2: Rufen Sie den Rollennamen oder die Zugangsdaten ab

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: Installieren Sie git-remote-codecommit und konfigurieren Sie AWS 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 Sie verwenden können, wenn Sie mithilfe rotierender Anmeldeinformationen eine Verbindung zu CodeCommit Repositorys herstellen.

  2. Sie können die Anmeldeinformationen auf eine der folgenden Arten mit AWS CLI dem benannten Profil des Benutzers verknüpfen.

    • Wenn Sie eine Rolle übernehmen, auf die Sie zugreifen möchten CodeCommit, konfigurieren Sie ein benanntes Profil mit den Informationen, die für die Übernahme dieser Rolle erforderlich sind. Wenn Sie beispielsweise eine Rolle übernehmen möchten, die CodeCommitAccess im Amazon Web Services-Konto 1111111111 benannt ist, können Sie ein Standardprofil für die Arbeit mit anderen AWS Ressourcen und ein benanntes Profil für die Übernahme dieser Rolle konfigurieren. Die folgenden Befehle erstellen ein benanntes Profil mit dem Namen, CodeAccess das eine benannte Rolle annimmt. CodeCommitAccess Der Benutzername Maria_Garcia ist der Sitzung zugeordnet, und das Standardprofil wird als Quelle der AWS 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 Identity Federation 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 AWS CLI benanntes Profil mit den erforderlichen Einstellungswerten hinzuzufügen. Um beispielsweise ein Profil zu erstellen, das die CodeCommitAccess Rolle übernimmt und eine Web-Identity-Tokendatei ~/ my-credentials /my-token-file verwendet:

      [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 im AWS Command Line Interface Benutzerhandbuch unter Konfiguration AWS Command Line Interface und Verwendung einer IAM-Rolle. AWS CLI

Schritt 4: Greifen Sie auf die Repositorys zu CodeCommit

Angenommen, Ihr Benutzer hat die Anweisungen unter befolgt, Herstellen einer Verbindung mit einem Repository um eine Verbindung zu den CodeCommit Repositorys herzustellen, verwendet der Benutzer dann die erweiterten Funktionen von git-remote-codecommit und Git, um die CodeCommit Repositorys git clonegit push, git pull auf die er Zugriff hat, aufzurufen und zu klonen, zu übertragen und aus ihnen abzurufen. Beispiel zum Klonen eines Repositorys:

git clone codecommit://CodeAccess@MyDemoRepo

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

Wenn der Benutzer das AWS CLI benannte Profil verwendet AWS CLI und angibt, das den rotierenden Zugangsdaten zugeordnet ist, werden Ergebnisse zurückgegeben, die sich auf dieses Profil beziehen.