Überblick
Diese Anleitung hilft dir, wenn du einen ChatGPT-Workspace administrierst und die App-Vorlage für GitHub Enterprise für deine Organisation einrichtest. Eine Vorlage ist nicht die fertige App, die Mitglieder nutzen. Sie führt dich durch die Einrichtung und erstellt einen Workspace-spezifischen App-Entwurf, sobald du die erforderliche GitHub Enterprise-Konfiguration angegeben hast.
Bei GitHub Enterprise wird ChatGPT durch die Einrichtung mit dem GitHub Enterprise-Host deiner Organisation verbunden. Du erstellst eine GitHub App, registrierst die ChatGPT-Callback-URL, generierst Zugangsdaten und fügst diese Werte dann bei der Vorlageneinrichtung in ChatGPT ein. Nachdem ChatGPT den App-Entwurf erstellt hat, kannst du ihn veröffentlichen und wie andere Workspace-Apps verwalten.
Informationen zur Navigation im Workspace und zum App-Zugriff findest du im Artikel Admin-Steuerung, Sicherheit und Compliance für Plugins und Apps.
Was du einrichtest
Du erstellst in ChatGPT eine Workspace-spezifische App für GitHub Enterprise. Die App verwendet:
Eine GitHub App, die auf deinem GitHub Enterprise-Host registriert ist.
Die Client-ID und das Client-Geheimnis der GitHub App für die OAuth-Autorisierung durch die nutzende Person.
Den privaten Schlüssel der GitHub App, damit ChatGPT Installationstoken für Repository-Vorgänge erstellen kann.
Ein Webhook-Geheimnis und eine Webhook-URL, damit GitHub Enterprise Installations- und Repository-Ereignisse an ChatGPT zurücksenden kann.
Deinen GitHub Enterprise-Hostnamen, etwa
github.example.com.
Erstelle eine GitHub App, keine eigenständige GitHub OAuth App. Für die Vorlageneinrichtung in ChatGPT sind Zugangsdaten für die GitHub App, ein privater Schlüssel und Webhook-Einstellungen erforderlich.
Bevor du beginnst
Du benötigst:
Admin- oder Inhaberzugriff auf den ChatGPT-Workspace.
Admin-Zugriff auf GitHub Enterprise oder Inhaberzugriff auf die Organisation, mit dem du GitHub Apps erstellen und installieren kannst.
Nur den GitHub Enterprise-Hostnamen, ohne
https://oder Pfad.Eine Entscheidung darüber, welche Repository-Aktionen ChatGPT unterstützen soll, etwa die Repository-Suche mit reinem Lesezugriff, Workflows für Pull Requests oder Issues, Dateibearbeitungen, GitHub Actions oder umfassendere Codex-Workflows.
Eine sichere Umgebung für den Umgang mit dem privaten Schlüssel und dem Client-Geheimnis der GitHub App.
Lass ChatGPT und GitHub Enterprise in separaten Tabs geöffnet. Erfinde die Callback-URL nicht selbst. Kopiere die Callback-URL exakt so, wie sie in ChatGPT angezeigt wird.
Diese Werte benötigst du
GitHub Enterprise-Hostname: zum Beispiel
github.example.com.Callback-URL: Kopiere sie aus der Vorlageneinrichtung in ChatGPT.
Client-ID der GitHub App.
Client-Geheimnis der GitHub App.
Privater Schlüssel der GitHub App im PEM-Format.
Von ChatGPT generiertes Webhook-Geheimnis.
Webhook-URL, die nach dem Erstellen des App-Entwurfs in ChatGPT generiert wird.
Vorlageneinrichtung in ChatGPT starten
Wechsle in ChatGPT zu dem Workspace, in dem die App verfügbar sein soll.
Öffne Workspace-Einstellungen > Apps. Du kannst auch die Admin-Konsole aufrufen, den gewünschten ChatGPT-Workspace auswählen und Plugins öffnen. Wähle Legacy-Apps verwalten, um die weiterhin verfügbare Seite Apps zu öffnen.
Wähle Verzeichnis.
Suche nach GitHub Enterprise.
Wähle die App-Vorlage für GitHub Enterprise aus und starte die Einrichtung.
Gib einen eindeutigen App-Namen und eine Beschreibung ein, etwa GitHub Enterprise oder GitHub Enterprise - Engineering.
Gib den Hostnamen von GitHub Enterprise ein, etwa
github.example.com.Kopiere die in ChatGPT angezeigte Callback-URL. Lass diesen Tab geöffnet.
Kopiere das generierte Webhook-Geheimnis, falls es während der Einrichtung angezeigt wird.
Beispiel für eine Callback-URL: https://chatgpt.com/connector/oauth/<callback_id>
Entferne nicht die Callback-ID, füge keinen abschließenden Schrägstrich hinzu und ersetze die URL nicht durch eine allgemeine ChatGPT-URL.
GitHub App in GitHub Enterprise erstellen
Öffne deinen GitHub Enterprise-Host, etwa
https://github.example.com.Rufe die Organisation oder das Konto auf, der bzw. dem die App gehören soll.
Öffne Einstellungen > Entwicklungseinstellungen > GitHub Apps.
Wähle Neue GitHub App.
Gib einen eindeutigen App-Namen ein, etwa ChatGPT GitHub Enterprise Connector.
Gib eine Homepage-URL ein. Falls es keine eigene interne Seite gibt, verwende die URL der Organisation in GitHub Enterprise.
Füge unter „Callback-URL“ die exakt aus ChatGPT kopierte Callback-URL ein.
Lass „Autorisierungstoken für die Nutzung ablaufen lassen“ aktiviert, sofern dein Sicherheitsteam keinen konkreten Grund hat, dies zu ändern.
Aktiviere „Autorisierung während der Installation anfordern“, damit Personen die App während der Installation oder des Verbindungsvorgangs autorisieren können.
Wähle unter „Wo kann diese GitHub App installiert werden?“ die restriktivste Option, die zu deiner geplanten Einführung passt.
Erstelle die GitHub App.
Berechtigungen und Ereignisse konfigurieren
Wähle nur die Berechtigungen aus, die für die geplanten ChatGPT-Aktionen erforderlich sind.
Um Repositorys mit reinem Lesezugriff zu finden und Fragen dazu zu beantworten, beginne mit Leseberechtigungen wie:
Metadaten: nur Lesezugriff. GitHub setzt für GitHub Apps den Zugriff auf Metadaten voraus.
Inhalte: nur Lesezugriff, für den Zugriff auf Datei- und Repository-Inhalte.
Issues: nur Lesezugriff, falls Issues gesucht oder gelesen werden sollen.
Pull Requests: nur Lesezugriff, falls die Suche nach Pull Requests oder Kontext für Reviews benötigt wird.
Actions: nur Lesezugriff, falls der Status von Workflow-Ausführungen, Jobs, Protokolle oder Artefakte benötigt werden.
Ergänze bei Workflows mit Schreibzugriff nur dort Schreibberechtigungen, wo sie benötigt werden, etwa für Inhalte, Pull Requests, Issues, Actions oder Workflows. Beschränke die Berechtigungen auf das für die vorgesehenen ChatGPT-Aktionen nötige Minimum.
Webhook-Ereignisse sollten zu den Workflows passen, die du unterstützt. Häufige Ereignisse sind Installation, Installations-Repositorys, Push, Pull Request, Issues, Issue-Kommentar, Workflow-Ausführung und Workflow-Job.
Zugangsdaten der GitHub App generieren und kopieren
Kopiere in den Einstellungen der GitHub App die Client-ID.
Generiere ein Client-Geheimnis und kopiere es sofort.
Generiere unter Private Schlüssel einen privaten Schlüssel.
Lade die .pem-Datei herunter und speichere sie sicher.
Öffne die .pem-Datei lokal und kopiere den vollständigen PEM-Text einschließlich der Anfangs- und Endzeile.
Der private Schlüssel ist vertraulich. Behandle ihn wie Zugangsdaten. Falls er unbefugt bekannt wird, generiere einen neuen privaten Schlüssel, aktualisiere die App-Konfiguration in ChatGPT und lösche den kompromittierten Schlüssel in GitHub Enterprise.
Einrichtung in ChatGPT abschließen
Kehre zum Tab mit der Vorlageneinrichtung in ChatGPT zurück.
Füge die Client-ID der GitHub App in OAuth-Client-ID ein.
Füge das Client-Geheimnis der GitHub App in OAuth-Client-Geheimnis ein.
Lass Berechtigungsbereiche unverändert, sofern deine Organisation die Standardwerte der Vorlage nicht gezielt überschreiben muss.
Prüfe, ob für GitHub Enterprise nur der Hostname angegeben ist, etwa
github.example.com.Füge den privaten Schlüssel der GitHub App im PEM-Format in „Privater Schlüssel der GitHub App“ ein oder lade ihn dort hoch.
Prüfe, ob das generierte Webhook-Geheimnis vorhanden ist.
Erstelle den App-Entwurf.
Öffne in ChatGPT die Details des erstellten App-Entwurfs und kopiere die generierte Webhook-URL.
Die Webhook-URL sollte so aussehen: https://connectors.api.openai.org/connectors/<connector_id>/webhook
Webhook-Einrichtung in GitHub Enterprise abschließen
Kehre zu den Einstellungen der GitHub App in GitHub Enterprise zurück.
Öffne die allgemeinen Einstellungen der GitHub App.
Aktiviere „Aktive Webhooks“, falls die Option noch nicht aktiviert ist.
Füge die Webhook-URL aus ChatGPT in „Webhook-URL“ ein.
Füge das Webhook-Geheimnis aus ChatGPT in „Webhook-Geheimnis“ ein.
Lass die SSL-Verifizierung aktiviert.
Prüfe, ob die abonnierten Webhook-Ereignisse zu den Berechtigungen und Aktionen passen, die du aktiviert hast.
Speichere die Änderungen.
App in ChatGPT veröffentlichen und verwalten
Durch das Erstellen des App-Entwurfs wird die App nicht automatisch für Mitglieder verfügbar. Nachdem du den Entwurf geprüft hast:
Veröffentliche den App-Entwurf.
Öffne in den Workspace-Einstellungen die Seite Apps und dann Aktiviert. Prüfe, ob die App angezeigt wird. Du kannst die Seite „Apps“ auch über „Legacy-Apps verwalten“ in „Admin-Konsole > Plugins“ öffnen.
Konfiguriere den Nutzerzugriff für die Rollen, die die App nutzen sollen.
Prüfe die Aktionssteuerung für Lese- und Schreibaktionen.
Prüfe die App-Berechtigungen, um festzulegen, wann ChatGPT Mitglieder vor der Nutzung der App um Zustimmung bittet.
Bitte eine zugriffsberechtigte Testperson, Apps in ChatGPT zu öffnen und zu prüfen, ob die App angezeigt wird.
Diese App-Berechtigungen gelten für ChatGPT-Unterhaltungen. Bei Workspace Agents legt die Person, die den jeweiligen Agenten erstellt, dessen Einstellungen fest. Diese bestimmen, welche App-Aktionen verfügbar sind und wann die nutzende Person um Zustimmung gebeten wird. Informationen zum Verhalten von Agenten findest du im Artikel ChatGPT Workspace Agents für Enterprise und Business.
GitHub App installieren und testen
Installiere die GitHub App in GitHub Enterprise für die Organisation oder das Konto.
Wähle gemäß der Workspace-Richtlinie alle oder nur bestimmte Repositorys aus.
Starte den Verbindungsvorgang in ChatGPT mit einem zugriffsberechtigten Konto.
Autorisiere die GitHub App, wenn du dazu aufgefordert wirst.
Führe zunächst eine kleine Leseaktion aus, etwa das Auflisten zugänglicher Repositorys oder das Abrufen eines bekannten Pull Requests.
Falls Schreibaktionen aktiviert sind, teste sie vor der breiteren Einführung an einem Repository mit geringem Risiko.
Hostname und OAuth-Verhalten
ChatGPT leitet aus dem Hostnamen die GitHub Enterprise-Endpunkte ab. Gib nur den Hostnamen ein, etwa github.example.com oder octocorp.ghe.com.
Gib weder einen API-Pfad noch einen Repository-Pfad ein. Verwende github.com nur, wenn dies der tatsächliche GitHub Enterprise-Host für diese App ist.
Fehlerbehebung
Weiterleitungs-URI stimmt nicht überein: Prüfe, ob die Callback-URL der GitHub App exakt mit der in ChatGPT angezeigten Callback-URL übereinstimmt.
ChatGPT kann den App-Entwurf nicht erstellen oder speichern: Prüfe, ob alle Pflichtfelder ausgefüllt sind, einschließlich Hostname, OAuth-Client-ID, OAuth-Client-Geheimnis, privater Schlüssel und Webhook-Geheimnis.
Die Authentifizierung gelingt, aber Repository-Aufrufe schlagen fehl: Prüfe, ob die GitHub App installiert ist und Zugriff auf das Repository hat.
Die API meldet 403 oder unzureichende Berechtigungen: Ergänze die fehlende Berechtigung der GitHub App. Falls eine Aufforderung erscheint, lass die aktualisierten Berechtigungen von der Person genehmigen, der die Installation gehört.
Es werden keine Repositorys angezeigt: Prüfe, ob die App-Installation die erwarteten Repositorys umfasst und die Person, die die Autorisierung in ChatGPT durchführt, darauf zugreifen kann.
Webhook-Zustellungen schlagen fehl: Prüfe, ob Webhook-URL und Webhook-Geheimnis mit den Werten aus ChatGPT übereinstimmen. Lass die SSL-Verifizierung aktiviert und stelle sicher, dass der GitHub Enterprise-Host
connectors.api.openai.orgerreichen kann.Fehler beim privaten Schlüssel: Prüfe, ob der vollständige PEM-Inhalt einschließlich der Anfangs- und Endzeile kopiert wurde.
