View a markdown version of this page

Bitbucket-App-Verbindungen - AWS CodeBuild

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.

Bitbucket-App-Verbindungen

Du kannst Bitbucket verwenden, um dich mit zu verbinden. CodeBuild Bitbucket-App-Verbindungen werden unterstützt durch. AWS CodeConnections

Anmerkung

CodeConnections ist in weniger Regionen verfügbar als CodeBuild. Sie können regionsübergreifende Verbindungen in CodeBuild verwenden. Verbindungen, die in Opt-in-Regionen erstellt wurden, können in anderen Regionen nicht verwendet werden. Weitere Informationen finden Sie unter AWS CodeConnections -Endpunkte und -Kontingente.

Schritt 1: Stelle eine Verbindung zu Bitbucket (Konsole) her

Gehe wie folgt vor, um mit der CodeBuild Konsole eine Verbindung für dein Projekt in Bitbucket hinzuzufügen.

Eine Verbindung mit Bitbucket erstellen
Anmerkung

Anstatt eine bestehende Verbindung in deinem Konto zu erstellen oder zu verwenden, kannst du eine Verbindung verwenden, die von einem anderen AWS Konto aus geteilt wird. Weitere Informationen finden Sie unter Verbindungen mit AWS Konten teilen.

Schritt 2: Gewähren Sie der CodeBuild Projekt-IAM-Rolle Zugriff, um die Verbindung nutzen zu können

Du kannst CodeBuild Projekt-IAM-Rollenzugriff gewähren, um die Bitbucket-Token zu verwenden, die über deine Verbindung verkauft werden.

Um dem CodeBuild Projekt IAM-Rollenzugriff zu gewähren
  1. Erstellen Sie eine IAM-Rolle für Ihr CodeBuild Projekt, indem Sie den Anweisungen Erlauben CodeBuild Sie die Interaktion mit anderen Diensten AWS für Ihr CodeBuild Projekt folgen.

  2. Folgen Sie den Anweisungen und fügen Sie Ihrer CodeBuild Projektrolle die folgende IAM-Richtlinie hinzu, um Zugriff auf die Verbindung zu gewähren.

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codeconnections:GetConnectionToken", "codeconnections:GetConnection" ], "Resource": [ "arn:aws:iam::*:role/Service*" ] } ] }

Schritt 3: Konfigurieren Sie CodeBuild , um die neue Verbindung zu verwenden

Sie können eine Verbindung als Anmeldeinformationen auf Kontoebene konfigurieren und sie in einem Projekt verwenden.

AWS-Managementkonsole
Um eine Verbindung als Anmeldeinformationen auf Kontoebene zu konfigurieren, finden Sie im AWS-Managementkonsole
  1. Wählen Sie für Source provider (Quellanbieter) die Option Bitbucket aus.

  2. Führen Sie für Credential einen der folgenden Schritte aus:

    • Wählen Sie Standard-Quellanmeldedaten, um die Standard-Quellanmeldedaten Ihres Kontos für alle Projekte zu verwenden.

      1. Wenn du nicht mit Bitbucket verbunden bist, wähle Standard-Quellanmeldedaten verwalten.

      2. Wählen Sie als Anmeldeinformationstyp die Option. CodeConnections

      3. Wählen Sie unter Verbindung aus, ob Sie eine bestehende Verbindung verwenden oder eine neue Verbindung erstellen möchten.

    • Wählen Sie Benutzerdefinierte Quellanmeldedaten, um benutzerdefinierte Quellanmeldedaten zu verwenden, um die Standardeinstellungen Ihres Kontos zu überschreiben.

      1. Wählen Sie als Anmeldeinformationstyp die Option. CodeConnections

      2. Wählen Sie unter Verbindung aus, ob Sie eine bestehende Verbindung verwenden oder eine neue Verbindung erstellen möchten.

AWS CLI
Um eine Verbindung als Anmeldeinformationen auf Kontoebene zu konfigurieren, finden Sie im AWS CLI
  • Öffnen Sie die Eingabeaufforderung (Windows) oder das Terminal (Linux, macOS oder Unix). Verwenden Sie den AWS CLI , um den import-source-credentials Befehl auszuführen, und geben Sie dabei --auth-type--server-type, und --token für Ihre Verbindung an.

    Verwenden Sie den folgenden Befehl:

    aws codebuild import-source-credentials --auth-type CODECONNECTIONS --server-type BITBUCKET --token <connection-arn>

Weitere Informationen zum Einrichten mehrerer Token in Ihrem CodeBuild Projekt finden Sie unterKonfigurieren Sie mehrere Token als Anmeldeinformationen auf Quellenebene.

Rotierende Bitbucket OAuth-Aktualisierungstoken

Atlassian setzt jetzt rotierende Aktualisierungstoken zur einmaligen Verwendung für Bitbucket OAuth durch. Jedes Mal, wenn du ein Aktualisierungstoken verwendest, macht Bitbucket es ungültig und gibt ein neues zurück. Weitere Informationen findest du unter Bitbucket OAuth Single-Use-Aktualisierungstoken (CHANGE-3052) auf der Atlassian-Entwickler-Website.

Manager-stored Erforderliche Aktion für Secrets-Anmeldeinformationen

Wenn du Bitbucket-OAuth-Anmeldeinformationen in Secrets Manager speicherst, füge die secretsmanager:PutSecretValue Berechtigung zu deiner CodeBuild Servicerolle hinzu. Mit dieser Berechtigung CodeBuild kannst du das aktualisierte Aktualisierungstoken nach jeder Token-Aktualisierung wieder in dein Secret schreiben. Ohne diese Erlaubnis schlägt der nächste Build nach einer Token-Aktualisierung fehl.

Das folgende Beispiel für eine IAM-Richtlinienanweisung gewährt die erforderliche Berechtigung:

{ "Effect": "Allow", "Action": "secretsmanager:PutSecretValue", "Resource": "arn:aws:secretsmanager:*:*:secret:codebuild/*" }

Wenn Sie die CodeBuild-managed Option verwenden, sind keine Änderungen erforderlich. CodeBuild verarbeitet die Token-Rotation automatisch.

Migrieren Sie zu AWS CodeConnections (empfohlen)

Für die Bitbucket-Integration empfehlen wir AWS CodeConnections die Migration zu. AWS CodeConnections verwendet einen separaten Autorisierungsmechanismus, auf den sich rotierende Aktualisierungstoken nicht auswirken. Sie müssen keine Token verwalten oder Berechtigungen hinzufügen.

Führen Sie die folgenden Schritte aus AWS CodeConnections, um zu migrieren:

  1. Öffnen Sie die Developer Tools-Konsole. Wählen Sie „Einstellungen“, „Verbindungen“ und dann „Verbindung erstellen“. Wähle Bitbucket als Anbieter aus.

  2. Autorisiere die AWS CodeConnections App in deinem Bitbucket-Workspace. Dazu ist die Berechtigung Workspace verwalten in Bitbucket erforderlich.

  3. Füge deiner CodeBuild Servicerolle die folgenden Berechtigungen hinzu: codeconnections:GetConnectionToken und. codeconnections:GetConnection

  4. Legen Sie die Verbindung als Ihre Standardanmeldedaten fest:

    aws codebuild import-source-credentials --auth-type CODECONNECTIONS --server-type BITBUCKET --token <connection-arn>
  5. Alle Projekte, die die Standardanmeldedaten verwenden, wechseln automatisch. Aktualisieren Sie Projekte, die benutzerdefinierte, projektspezifische Anmeldeinformationen verwenden, einzeln. Verwenden Sie die Konsole oder die UpdateProject API.