Skip to main content
Wir veröffentlichen regelmäßig Aktualisierungen unserer Dokumentation, und die Übersetzung dieser Seite ist möglicherweise noch nicht abgeschlossen. Aktuelle Informationen findest du in der englischsprachigen Dokumentation.
GitHub AE ist derzeit begrenzt freigegeben.

Informationen zu Apps

Du kannst Integrationen mithilfe der GitHub AE-APIs erstellen, um deinem eigenen Workflow Flexibilität hinzuzufügen und einen reibungslosen Ablauf zu gewährleisten.

Apps auf GitHub ermöglichen dir die Automatisierung und Verbesserung deines Workflows. Du kannst Apps erstellen, um deinen Workflow zu verbessern.

GitHub Apps sind die offiziell empfohlene Möglichkeit zur Integration in GitHub, weil sie viel detailliertere Berechtigungen für den Zugriff auf Daten bieten., GitHub unterstützt jedoch sowohl OAuth Apps als auch GitHub Apps. Informationen zur Auswahl eines App-Typs findest du unter Unterschiede zwischen GitHub-Apps und OAuth-Apps.

Eine exemplarische Vorgehensweise für die Erstellung einer GitHub App findest du unter Using the GitHub API in your app.

Informationen zu GitHub Apps

GitHub Apps sind erstklassige Akteure auf GitHub. Eine GitHub App agiert selbstständig, indem sie direkt mit ihrer eigenen Identität Aktionen über die API ausführt. Dies bedeutet, dass du kein Bot- oder Dienstkonto als separaten Benutzer benötigst.

Du kannst GitHub Apps direkt in Organisationen und persönlichen Konten installieren und ihnen Zugriff auf bestimmte Repositorys gewähren. Diese Apps verfügen über integrierte Webhooks und restriktive, spezifische Berechtigungen. Beim Einrichten deiner GitHub App kannst du die Repositorys auswählen, auf die die App zugreifen soll. Du kannst beispielsweise eine App MyGitHub einrichten, die Probleme im Repository und octocatnur das octocat Repository schreibt. Zum Installieren einer GitHub App musst du ein Organisationsbesitzer sein oder über Administratorberechtigungen in einem Repository verfügen.

Standardmäßig können die Einstellungen von GitHub Apps in einer Organisation nur von Organisationsbesitzern verwaltet werden. Um weiteren Benutzern das Ändern der Entwicklereinstellungen von GitHub Apps im Besitz der Organisation zu erlauben, kann ein Benutzer Berechtigungen als GitHub App-Manager erteilen. GitHub App-Manager können keine Drittanbieteranwendungen verwalten. Weitere Informationen zum Hinzufügen und Entfernen von GitHub App-Managern in deiner Organisation findest du unter GitHub App-Manager.

GitHub Apps sind Anwendungen, die irgendwo gehostet werden müssen. Schrittanleitungen zu den Themen Server und Hosting findest du unter Using the GitHub API in your app.

Zum Verbessern deines Workflows kannst du eine GitHub App erstellen, die mehrere Skripts oder eine gesamte Anwendung enthält, und dann diese App mit vielen anderen Tools verbinden. So kannst du beispielsweise GitHub Apps mit GitHub, Slack, anderen ggf. vorhandenen internen Apps, E-Mail-Programmen oder anderen APIs verbinden.

Beachte beim Erstellen von GitHub Apps die folgenden Punkte:

  • Eine GitHub App sollte Aktionen unabhängig von Benutzer*innen ausführen (es sei denn, die App verwendet ein Benutzer-zu-Server-Token). Um Token für den Zugriff von Benutzern auf Server sicherer zu gestalten, kannst du Zugriffstoken, die nach acht Stunden ablaufen, und ein Aktualisierungstoken verwenden, das gegen ein neues Zugriffstoken ausgetauscht werden kann. Weitere Informationen findest du unter Aktualisieren von Benutzerzugriffstoken.

  • Stelle sicher, dass die GitHub App mit bestimmten Repositorys integriert werden kann.

  • Die GitHub App sollte eine Verbindung mit einem persönlichen Konto oder einer Organisation herstellen.

  • Erwarte nicht, dass die GitHub App alles weiß und kann, was Benutzer*innen wissen und können.

  • Verwende keine GitHub App, wenn du nur einen Dienst zum Anmelden mit GitHub benötigst. Eine GitHub App kann jedoch einen Benutzeridentifikationsflow verwenden, um Benutzer*innen anzumelden und andere Aktionen auszuführen.

  • Erstelle keine GitHub App, wenn du nur als GitHub-Benutzer*in agieren und alle möglichen Benutzeraktionen ausführen möchtest.

Sieh dir zunächst den Artikel Erstellen einer GitHub-App an, um mit dem Entwickeln von GitHub Apps zu beginnen.

Informationen zu OAuth Apps

OAuth2 ist ein Protokoll, mit dem externe Anwendungen Zugriff auf private Details im GitHub-Konto eines Benutzers oder einer Benutzerin beantragen können, ohne dass auf das Kennwort zugegriffen werden muss. Dies ist der Standardauthentifizierung vorzuziehen, da Token auf bestimmte Arten von Daten beschränkt und jederzeit von den Benutzer*innen widerrufen werden können.

Warnung: Durch das Widerrufen aller Berechtigungen einer OAuth App werden alle SSH-Schlüssel gelöscht, die die Anwendung im Namen des Benutzers generiert hat, einschließlich der Bereitstellungsschlüssel.

Eine OAuth App verwendet GitHub als Identitätsanbieter, um sich als der Benutzer bzw. die Benutzerin zu authentifizieren, der bzw. die Zugriff auf die App gewährt. Dies bedeutet, dass Benutzer*innen, die einer OAuth App Zugriff gewähren, dieser App Berechtigungen für alle Repositorys erteilen, auf die sie mit ihrem Konto Zugriff haben, sowie für alle Organisationen, zu denen sie gehören und bei denen der Zugriff durch Dritte nicht blockiert ist.

Das Erstellen einer OAuth App ist eine gute Option, wenn du Prozesse erstellst, die zu komplex für ein einfaches Skript sind. Beachte, dass es sich bei OAuth Apps um Anwendungen handelt, die irgendwo gehostet werden müssen.

Beachte beim Erstellen von OAuth Apps die folgenden Punkte:

  • Eine OAuth App sollte immer und überall auf GitHub als der bzw. die authentifizierte GitHub-Benutzer*in agieren (z. B. beim Bereitstellen von Benutzerbenachrichtigungen).
  • Eine OAuth App kann als Identitätsanbieter verwendet werden, indem das Anmelden mit GitHub für den bzw. die authentifizierte Benutzer*in aktiviert wird.
  • Erstelle keine OAuth App, wenn deine Anwendung nur für ein Repository Aktionen ausführen soll. Mit dem OAuth-Bereich repo können OAuth Apps in allen Repositorys des authentifizierten Benutzers bzw. der authentifizierten Benutzerin Aktionen ausführen.
  • Erstelle keine OAuth App als Anwendung für dein Team oder Unternehmen. OAuth Apps authentifizieren sich als einzelner Benutzer bzw. einzelne Benutzerin. Wenn eine Person eine OAuth App zur Nutzung durch ein Unternehmen erstellt und dann das Unternehmen verlässt, hat folglich niemand mehr Zugriff darauf.

Weitere Informationen zu OAuth Apps findest du unter Erstellen einer OAuth-App und unter Authentifizieren bei der REST-API mit einer OAuth-App.

Personal access tokens

Ein personal access token ist eine Zeichenfolge, die ähnlich wie ein OAuth-Token funktioniert, da du die mit ihm verknüpften Berechtigungen über Bereiche festlegen kannst. Ein personal access token ähnelt auch einem Kennwort. Du kannst jedoch über viele persönliche Zugriffstoken verfügen und den Zugriff für die einzelnen Token jederzeit widerrufen.

Du kannst zum Beispiel einem personal access token Schreibberechtigungen für deine Repositorys erteilen. Wenn du dann einen curl-Befehl ausführst oder ein Skript schreibst, das ein Issue in deinem Repository erstellt, wird zur Authentifizierung das personal access token übergeben. Du kannst das personal access token als Umgebungsvariable speichern, damit du es nicht bei jeder Verwendung neu eintippen musst.

Beachte bei der Verwendung von personal access token die folgenden Punkte:

  • Denke daran, dieses Token nur für dich selbst zu verwenden.
  • Du kannst einmalige curl-Anforderungen ausführen.
  • Du kannst persönliche Skripts ausführen.
  • Richte kein Skript ein, das von deinem gesamten Team oder Unternehmen verwendet werden soll.
  • Richte kein gemeinsam genutztes persönliches Konto ein, das als Botbenutzer fungieren soll.
  • Erteile deinem Token nur die minimal benötigten Berechtigungen.
  • Lege ein Ablaufdatum für deine personal access token fest, um deine Daten zu schützen.

Entscheidung über die zu erstellende Integration

Bevor du mit dem Erstellen von Integrationen beginnst, musst du die beste Möglichkeit für den Zugriff, die Authentifizierung und die Interaktion mit den GitHub AE-APIs ermitteln.

Berücksichtige bei der Entscheidung, ob personal access token, GitHub Apps oder OAuth Apps für die Integration verwendet werden sollen, die folgenden Fragen zum gewünschten Verhalten deiner Integration und zu den Zugriffsanforderungen:

  • Agiert meine Integration nur als ich, oder verhält sie sich eher wie eine Anwendung?
  • Möchte ich, dass sie unabhängig von mir als eigene Entität agiert?
  • Greift sie auf alles zu, worauf ich zugreifen kann, oder möchte ich ihren Zugriff beschränken?
  • Ist sie einfach oder komplex? Beispielsweise ist ein personal access token gut für einfache Skripts und curl-Befehle geeignet, während eine OAuth App komplexere Skripts verarbeiten kann.

Wenn die Integration nur in deiner Rolle agiert, der Zugriff jedoch eingeschränkt werden soll, verwende eine GitHub App oder ein fine-grained personal access token.

Wenn sich die Integration eher wie eine Anwendung verhalten soll, überlege, ob die Integration von dir unabhängig als eigenständige Entität agieren soll. Wenn ja, verwende eine GitHub App.

Anfordern von Unterstützung

Um Fragen, Fehlerberichte und Diskussionen zu GitHub Apps, OAuth Apps und API-Entwicklung zu finden, durchsuche das Diskussionen zu APIs und Integrationen in der GitHub-Community. Die Diskussionen werden von GitHub-Mitarbeiterinnen moderiert und gewartet, aber Fragen, die im Forum gestellt werden, werden nicht zwingend von GitHub-Mitarbeiterinnen beantwortet.

Wende dich bei folgenden Anliegen über das Kontaktformular direkt an den GitHub-Support:

  • garantierte Antwort von GitHub AE-Mitarbeitern
  • Support-Anfragen mit sensitiven Daten oder privaten Anliegen
  • Feature-Anfragen
  • Feedback zu GitHub AE-Produkten