Wie behebe ich Authentifizierungsfehler bei der Integration von CodeBuild mit GitHub Actions?
Ich habe mein AWS CodeBuild-Projekt mit GitHub Actions als Quellanbieter konfiguriert. Es schlägt jedoch fehl, wenn der Build die Download_Source-Phase startet.
Kurzbeschreibung
Du musst den CodeBuild-Projektnamen angeben, um Aufträge mit den richtigen Projekteinstellungen aufrufen zu können. Die folgenden Fehler treten auf, wenn du keine Authentifizierung hast und das CodeBuild-Projekt in der Download_Source-Phase fehlschlägt:
„CLIENT_ERROR: authentication required for primary source“
„CLIENT_ERROR: authorization failed for primary source and source version:“
Um diese Fehler zu beheben, ermittle die verwendete Authentifizierungsmethode und konfiguriere dann die erforderlichen Einstellungen und Berechtigungen.
Lösung
Gehe wie folgt vor, um zu ermitteln, mit welcher Methode du CodeBuild mit GitHub verbindest:
- Öffne die CodeBuild-Konsole.
- Erweitere im Navigationsbereich Build und dann Build-Projekte.
- Wähle das Build-Projekt aus und wähle dann Bearbeiten aus.
- Überprüfe im Abschnitt Quelle die Anmeldeinformations-Meldung, um die verwendete Authentifizierungsmethode zu ermitteln.
Für persönliche Zugriffstoken
Gehe wie folgt vor, um zu überprüfen, ob dein persönliches Zugriffstoken existiert und gültig ist:
- Überprüfe deine GitHub Developer-Einstellungen. Weitere Informationen findest du unter Verwalten deiner persönlichen Zugriffstoken auf der GitHub Docs-Website.
- Stelle sicher, dass du dein persönliches Zugriffstoken mit den Voraussetzungen für das Zugriffstoken korrekt konfiguriert hast.
- Wenn deine persönlichen Zugriffstoken abgelaufen sind, generiere die Authentifizierungstoken erneut und aktualisiere die Token in AWS Secrets Manager.
Für Secrets Manager-Geheimnisse
Gehe wie folgt vor, um zu überprüfen, ob das Secrets Manager-Geheimnis existiert und nicht abgelaufen ist:
- Wenn du über ein Secrets Manager-Geheimnis verbunden bist, überprüfe, ob das Geheimnis existiert und der Wert aktuell ist.
- Vergewissere dich, dass die CodeBuild-Projektservicerolle den secretsmanager:GetSecretValue enthält, um die Geheimnisse abzurufen.
Rufe die Servicerolle des CodeBuild-Projekts ab, um zu überprüfen, ob du über die secretsmanager:GetSecretValue-Berechtigungen verfügst. Führe die folgenden Schritte aus:
- Öffne die CodeBuild-Konsole.
- Wähle das Projekt aus und wähle dann die Registerkarte Projektdetails.
- Wähle in der Umgebungs-Konfiguration die Servicerollen-Einstellung aus.
- Wähle die Servicerolle aus.
- Vergewissere dich, dass die Rolle über die folgenden Berechtigungen verfügt:
Hinweis: Ersetze region durch deine AWS-Region, account-ID durch deine AWS-Konto-ID und secretName durch den Namen deines Geheimnisses."Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:region:account-id:secret:secretName" ]
Für OAuth-Anwendungen
Das OAuth-Token ist an den GitHub-Benutzer gebunden. Wenn der GitHub-Eigentümer aus der Organisation entfernt wird, ist das Token nicht mehr gültig. Um die autorisierten OAuth-Anwendungen zu überprüfen, vergewissere dich, dass die Anwendungs-Liste auf GitHub die AWS CodeBuild (region)-Anwendung enthält, die aws-codesuite gehört.
Für CodeConnections
Gehe wie folgt vor, um zu überprüfen, ob CodeConnections existieren und gültig sind:
- Vergewissere dich, dass du die Anwendung „AWS Connector for GitHub“ installiert hast. Weitere Informationen findest du auf der GitHub Docs-Website unter Navigieren zu der GitHub App, die du überprüfen oder ändern möchtest.
- Vergewissere dich, dass die CodeBuild-Servicerolle über die richtigen Rollenberechtigungen für AWS Identity and Access Management (IAM) verfügt.
Ähnliche Informationen
Zugriff auf GitHub und GitHub Enterprise Server in CodeBuild
- Themen
- Developer Tools
- Tags
- AWS CodeBuild
- Sprache
- Deutsch

Relevanter Inhalt
AWS OFFICIALAktualisiert vor 10 Monaten