Dependabot-Geheimnisse
Dependabot-Geheimnisse werden verwendet, um Anmeldeinformationen und vertrauliche Informationen für die Verwendung in Dependabot zu speichern.
Auf Dependabot-Geheimnisse wird in der dependabot.yml-Datei eines Repositorys verweisen.
Usage
Dependabot-Geheimnisse werden von Dependabot für die Authentifizierung bei privaten Paketregistrierungen verwendet. Dadurch kann Dependabot Pull Requests erstellen, um anfällige oder veraltete Abhängigkeiten in privaten Repositorys zu aktualisieren. In der dependabot.yml-Datei eines Repositorys wird bei der Verwendung für die Authentifizierung auf diese Dependabot-Geheimnisse verwiesen.
Dependabot-Geheimnisse können ebenfalls Geheimnisse einschließen, die für Workflows benötigt werden, die von Dependabot initiiert wurden. Beispiel: Dependabot kann GitHub Actions-Workflows auslösen, wenn Pull Requests zum Aktualisieren von Abhängigkeiten oder Kommentare zu Pull Requests erstellt werden. In diesem Fall kann in Workflowdateien (.github/workflows/*.yml) auf Dependabot-Geheimnisse verwiesen werden, solange der Workflow durch ein Dependabot-Ereignis ausgelöst wird.
Geltungsbereich
Du kannst Dependabot-Geheimnisse auf den folgenden Ebenen definieren:
- Repositoryebene
- Organisationsebene
Dependabot-Geheimnisse können für Repositorys freigegeben werden, wenn sie auf Organisationsebene festgelegt sind. Du musst angeben, welche Repositorys in der Organisation auf das Geheimnis zugreifen können.
Zugriffsberechtigungen
Dependabot greift bei der Authentifizierung bei privaten Registrierungen auf Dependabot-Geheimnisse zu, um Abhängigkeiten zu aktualisieren.
GitHub Actions-Workflows greifen auf Dependabot-Geheimnisse zu, wenn das Triggerereignis für den Workflow durch Dependabot initiiert wird. Dies liegt daran, dass beim Initiieren eines Workflows durch Dependabot ausschließlich Dependabot-Geheimnisse verfügbar sind. Auf Actions-Geheimnisse kann nicht zugegriffen werden. Aus diesem Grund müssen alle für diese Workflows erforderlichen Geheimnisse als Dependabot-Geheimnisse anstatt als Actions-Geheimnisse gespeichert werden. Es gibt zusätzliche Sicherheitseinschränkungen für das pull_request_target-Ereignis. Weitere Informationen findest du unter Einschränkungen.
Benutzerzugriffsberechtigungen
Geheimnisse auf Repositoryebene:
- Benutzende mit Administratorzugriff für das Repository können Dependabot-Geheimnisse erstellen und verwalten.
- Benutzende mit Projektmitarbeiterzugriff für das Repository können das Geheimnis für Dependabot verwenden.
Geheimnisse auf Organisationsebene: * Organisationsbesitzende können Dependabot-Geheimnisse erstellen und verwalten.
- Benutzende mit Projektmitarbeiterzugriff für die Repositorys mit Zugriff auf die einzelnen Geheimnisse auf können die Geheimnisse für Dependabot verwenden.
Beschränkungen und Einschränkungen
Bei Workflows, die durch Dependabot initiiert werden, wird das pull_request_target-Ereignis anders als andere Ereignisse behandelt. Wenn für dieses Ereignis der Basisverweis für den Pull Request von Dependabot (github.event.pull_request.user.login == 'dependabot[bot]') erstellt wurde:
- Der Workflow empfängt ein schreibgeschütztes
GITHUB_TOKEN-Element. - Geheimnisse sind für den Workflow nicht verfügbar.
Diese zusätzliche Einschränkung trägt dazu bei, potenzielle Sicherheitsrisiken durch Pull Requests zu verhindern, die von Dependabot erstellt wurden.
Dependabot-Geheimnisse werden nicht an Forks übergeben.
Aktionsgeheimnisse
Actions-Geheimnisse werden verwendet, um vertrauliche Informationen wie API-Schlüssel, Authentifizierungstoken und weitere Anmeldeinformationen in Workflows zu speichern.
Usage
In Workflowdateien (.github/workflows/*.yml) wird auf Actions-Geheimnisse verwiesen.
Geltungsbereich
Du kannst Actions-Geheimnisse auf den folgenden Ebenen definieren:
- Repositoryebene
- Umgebungsebene
- Organisationsebene
Geheimnisse auf Umgebungsebene sind für eine bestimmte Umgebung wie die Produktions- oder Stagingumgebung spezifisch. Actions-Geheimnisse können zwischen Repositorys geteilt werden, wenn diese auf Organisationsebene festgelegt wurden. Du kannst Zugriffsrichtlinien verwenden, um zu steuern, welche Repositorys Zugriff auf das Geheimnis haben.
Zugriffsberechtigungen
Actions-Geheimnisse sind ausschließlich in GitHub Actions-Workflows verfügbar. Trotz der Ausführung in Actions hat Dependabot keinen Zugriff auf Actions-Geheimnisse.
Bei durch Dependabot initiierten Workflows sind Actions-Geheimnisse nicht verfügbar. Diese Workflowgeheimnisse müssen für den Zugriff auf den Workflow als Dependabot-Geheimnisse gespeichert werden.
Der Speicherort, an dem das Actions-Geheimnis gespeichert wird, bestimmt den Zugriff:
- Repositorygeheimnis: Alle Workflows im Repository können auf das Geheimnis zugreifen.
- Umgebungsgeheimnis: Das Geheimnis ist auf Aufträge beschränkt, die auf diese bestimmte Umgebung verweisen.
- Organisationsgeheimnis: Alle Workflows in den Repositorys, denen der Zugriff durch die Organisation gewährt wurde, können auf die Organisationsgeheimnisse zugreifen.
Benutzerzugriffsberechtigungen
Geheimnisse auf Repositoryebene und Umgebungsgeheimnisse:
- Benutzende mit Administratorzugriff für das Repository können Actions-Geheimnisse erstellen und verwalten.
- Benutzende mit Projektmitarbeiterzugriff für das Repository können das Geheimnis verwenden.
Geheimnisse auf Organisationsebene: * Organisationsbesitzende können Actions-Geheimnisse erstellen und verwalten.
- Benutzende mit Projektmitarbeiterzugriff für die Repositorys mit Zugriff auf die einzelnen Geheimnisse können das Geheimnis verwenden.
Beschränkungen und Einschränkungen
- Actions-Geheimnisse sind für durch Dependabot initiierten Workflows nicht verfügbar.
- Actions-Geheimnisse werden nicht an Workflows übergeben, die durch einen Pull Request von einem Fork ausgelöst werden.
- Der Inhalt aller in die Workflowprotokolle ausgegebenen GitHub-Geheimnisse wird durch GitHub Actions automatisch unkenntlich.
- Du kannst bis zu 1.000 Organisationsgeheimnisse, 100 Repositorygeheimnisse und 100 Umgebungsgeheimnisse speichern. Geheimnisse sind auf 48 KB beschränkt. Weitere Informationen findest du unter Einschränkungen für Geheimnisse.
Weiterführende Lektüre
-
[AUTOTITLE](/code-security/dependabot/working-with-dependabot/configuring-access-to-private-registries-for-dependabot#storing-credentials-for-dependabot-to-use) -
[AUTOTITLE](/actions/security-for-github-actions/security-guides/using-secrets-in-github-actions)