„Ressource nicht durch Integration zugänglich“ im Github-Post /repos/{owner}/{repo}/actions/runners/registration-token API
Lesezeit: 4 Minuten
Ich mache eine Curl-Post-Anfrage von meinem Github-Workflow (Aktion), um Registrierungstoken für einen selbst gehosteten Runner zu erhalten, aber ich erhalte die folgende Antwort:
{
"message": "Resource not accessible by integration",
"documentation_url": "https://docs.github.com/rest/reference/actions#create-a-registration-token-for-a-repository"
}
Unten ist eine abgespeckte Version meines Github-Workflows:
Irgendwann möchte ich dieses Token an das Ami übergeben, das ich mit dem Packer-Build-Befehl erstelle (nächster Schritt). Ich habe die obige Curl-Anfrage auch mit dem Shell-Provisioner des Packers versucht, aber die gleiche Antwort. Kann nicht herausfinden, ob ich einige Berechtigungen von github ui zulassen muss? Oder wie kann man das sonst machen? Danke im Voraus.
Hallo, haben Sie versucht, ein Personal Access Token (PAT) in Ihrem Curl anstelle von GITHUB_TOKEN zu verwenden?
– Guifalourd
21. Dezember 2021 um 14:45 Uhr
Hallo. Entschuldigung für die späte Antwort. Ja, habe ich und das funktioniert bei mir. Ich tendierte zu GITHUB_TOKEN, da es sich um ein temporäres Token handelt. Außerdem ein Schritt weniger (keine Notwendigkeit, ein PAT mit relevanten Berechtigungen zu erstellen und geheim zu speichern). Ich suche nur nach einer Erklärung, warum das GITHUB_TOKEN nicht funktioniert. Vielen Dank.
– nu_popli
22. Dezember 2021 um 7:03 Uhr
Wenn eine Operation mit dem PAT und nicht mit dem GITHUB_TOKEN funktioniert, handelt es sich meistens um ein Bereichsproblem. Das GHA-Token hat nur einen bestimmten Bereich, wenn die Github-API einen breiteren Bereich benötigt, um einige Operationen auszuführen. Hier erfordert das Erstellen eines Registrierungstokens wahrscheinlich Administratorberechtigungen, die nicht im GHA-Token enthalten sind. Ich werde eine offizielle Antwort mit weiteren Details hinzufügen 🙂👍🏼
– Guifalourd
22. Dezember 2021 um 10:36 Uhr
frenky
Versuchen Sie, hinzuzufügen permissions zu deiner arbeit:
Dies sollte Ihnen sagen, ob dies das Problem ist, dann können Sie herausfinden, welche Berechtigung Ihnen gefehlt hat, und sie in mehr korrekt konfigurieren Einzelheiten.
Wie in Kommentaren und anderen Antworten erwähnt, gibt es mehrere Möglichkeiten, Berechtigungen zu konfigurieren:
Details zu Standardberechtigungen finden Sie hier hier.
Hallo. Danke für die Antwort. Ich habe den Rat befolgt und soweit ich verstehe, kann dies nicht direkt im Workflow erfolgen. Ich habe ausdrücklich alle Berechtigungen im Workflow zugewiesen, aber es funktioniert immer noch nicht. Berechtigungen für GH-Token sind ebenfalls auf Lesen/Schreiben eingestellt. PAT benötigt Repo-Berechtigungen, um Registrierungstoken zu generieren, aber diese Bedingungen können nicht im Workflow zugewiesen werden.
– nu_popli
23. Dezember 2021 um 17:13 Uhr
Das Problem hier hängt mit der zusammen GITHUB_TOKEN Berechtigungsbereich, der automatisch in einer Github Actions-Workflowausführung generiert wird.
Als frennky in seiner Antwort geteilt, können die Standardberechtigungen dieses Tokens gefunden werden hier.
Auf dieser Grundlage haben Sie 2 Lösungen:
Der erste ist derjenige, der von vorgeschlagen wird freenkyAktualisierung der GITHUB_TOKEN Berechtigungen im Workflow laufen mit der Berechtigungsfeld in deiner Arbeit.
Die zweite ist die Verwendung von a Persönliches Zugriffstoken statt der Vorgabe GITHUB_TOKENerstellen Sie es mit den spezifischen Berechtigungen, die Sie benötigen, und fügen Sie es dann als Repository-Geheimnis.
Danke für die Antwort. Soweit ich verstehe, ist der Weg mit PAT der einzige Weg (was ich getestet habe, funktioniert). Korrigieren Sie mich, wenn ich falsch liege, aber ich glaube, dass die Registrierungstoken-API nicht direkt mit GITHUB_TOKEN im Aktionsworkflow verwendet werden kann.
– nu_popli
23. Dezember 2021 um 17:16 Uhr
Die API kann nicht mit verwendet werden UrsprünglichGITHUB_TOKEN Berechtigungen. Aber es kann möglich sein, die zu aktualisieren GITHUB_TOKEN Berechtigungsbereich mit der permission field (Ich habe es nicht versucht, also kann ich es nicht sicher sagen).
– Guifalourd
23. Dezember 2021 um 18:06 Uhr
Ich habe das versucht. So wie ich das verstehe, geht das nicht.
– nu_popli
25. Dezember 2021 um 18:55 Uhr
Wo finde ich heraus, welche Berechtigung der PAT gesetzt werden muss? Gibt es irgendwo eine Referenz für? Ich möchte, dass der Actions-Bot Kommentare hinzufügt. Es funktioniert gut, es sei denn, die Pull-Anforderung wird nicht gegabelt. Mit ghcli
– Ismoh
28. September 2022 um 8:48 Uhr
Ich glaube das voll repo Umfang ist genug für das, was Sie Ismoh wollen. Hinweis
– Guifalourd
28. September 2022 um 10:02 Uhr
14402700cookie-check„Ressource nicht durch Integration zugänglich“ im Github-Post /repos/{owner}/{repo}/actions/runners/registration-token APIyes
Hallo, haben Sie versucht, ein Personal Access Token (PAT) in Ihrem Curl anstelle von GITHUB_TOKEN zu verwenden?
– Guifalourd
21. Dezember 2021 um 14:45 Uhr
Hallo. Entschuldigung für die späte Antwort. Ja, habe ich und das funktioniert bei mir. Ich tendierte zu GITHUB_TOKEN, da es sich um ein temporäres Token handelt. Außerdem ein Schritt weniger (keine Notwendigkeit, ein PAT mit relevanten Berechtigungen zu erstellen und geheim zu speichern). Ich suche nur nach einer Erklärung, warum das GITHUB_TOKEN nicht funktioniert. Vielen Dank.
– nu_popli
22. Dezember 2021 um 7:03 Uhr
Wenn eine Operation mit dem PAT und nicht mit dem GITHUB_TOKEN funktioniert, handelt es sich meistens um ein Bereichsproblem. Das GHA-Token hat nur einen bestimmten Bereich, wenn die Github-API einen breiteren Bereich benötigt, um einige Operationen auszuführen. Hier erfordert das Erstellen eines Registrierungstokens wahrscheinlich Administratorberechtigungen, die nicht im GHA-Token enthalten sind. Ich werde eine offizielle Antwort mit weiteren Details hinzufügen 🙂👍🏼
– Guifalourd
22. Dezember 2021 um 10:36 Uhr