🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
80 lines
3.0 KiB
Markdown
80 lines
3.0 KiB
Markdown
# MYP OAuth Konfigurationsanleitung
|
|
|
|
Dieses Dokument beschreibt, wie die OAuth-Konfiguration für das MYP-Projekt eingerichtet wird.
|
|
|
|
## Überblick
|
|
|
|
Das MYP Frontend verwendet GitHub OAuth zur Authentifizierung. Die Konfiguration erfolgt über
|
|
Umgebungsvariablen, die in der Datei `/srv/myp-env/github.env` gespeichert werden.
|
|
|
|
## Konfiguration mit configure-oauth.sh
|
|
|
|
Wir haben ein Skript erstellt, um die OAuth-Konfiguration zu vereinfachen:
|
|
|
|
```bash
|
|
sudo ./configure-oauth.sh
|
|
```
|
|
|
|
Das Skript führt folgende Aktionen aus:
|
|
|
|
1. Erfasst die benötigten OAuth-Konfigurationsinformationen interaktiv
|
|
2. Speichert diese in `/srv/myp-env/github.env`
|
|
3. Aktualisiert einen laufenden Docker-Container (falls vorhanden)
|
|
4. Bietet die Option, den Container neu zu starten
|
|
|
|
## Benötigte Informationen
|
|
|
|
Für die Konfiguration werden folgende Informationen benötigt:
|
|
|
|
1. **GitHub-Typ**: GitHub Enterprise (git.i.mercedes-benz.com) oder GitHub.com
|
|
2. **OAuth Callback URL**: Die URL, zu der GitHub nach der Authentifizierung zurückleitet
|
|
- Standard für Unternehmensumgebung: `http://m040tbaraspi001.de040.corpintra.net/auth/login/callback`
|
|
- Standard für lokale Entwicklung: `http://localhost:3000/auth/login/callback`
|
|
3. **GitHub OAuth Client ID**: Von der GitHub OAuth App-Konfiguration
|
|
4. **GitHub OAuth Client Secret**: Von der GitHub OAuth App-Konfiguration
|
|
|
|
## Konfiguration der GitHub OAuth App
|
|
|
|
1. Navigieren Sie zu Ihren GitHub-Einstellungen (Organisationseinstellungen für Enterprise)
|
|
2. Wählen Sie "OAuth Apps" oder "Developer Settings" > "OAuth Apps"
|
|
3. Erstellen Sie eine neue OAuth App mit:
|
|
- **Name**: MYP (Manage Your Printer)
|
|
- **Homepage URL**: `http://m040tbaraspi001.de040.corpintra.net` (oder Ihre lokale URL)
|
|
- **Authorization callback URL**: Exakt die URL, die Sie auch im Skript konfigurieren
|
|
- **Description**: Optional
|
|
|
|
## Umgebungsvariablen
|
|
|
|
Die folgenden Umgebungsvariablen werden vom Skript konfiguriert:
|
|
|
|
```
|
|
# OAuth Callback URL
|
|
NEXT_PUBLIC_OAUTH_CALLBACK_URL=http://m040tbaraspi001.de040.corpintra.net/auth/login/callback
|
|
OAUTH_CALLBACK_URL=http://m040tbaraspi001.de040.corpintra.net/auth/login/callback
|
|
|
|
# GitHub OAuth Credentials
|
|
AUTH_GITHUB_CLIENT_ID=your_client_id
|
|
AUTH_GITHUB_CLIENT_SECRET=your_client_secret
|
|
|
|
# Kompatibilitäts-Variablen
|
|
OAUTH_CLIENT_ID=your_client_id
|
|
OAUTH_CLIENT_SECRET=your_client_secret
|
|
|
|
# GitHub Server-Konfiguration
|
|
GITHUB_ENTERPRISE=true
|
|
GITHUB_DOMAIN=https://git.i.mercedes-benz.com
|
|
```
|
|
|
|
## Deployment mit OAuth-Konfiguration
|
|
|
|
Die Deployment-Skripte `raspi-frontend-deploy.sh` sind so konfiguriert, dass sie die OAuth-Konfiguration aus
|
|
`/srv/myp-env/github.env` laden und dem Container zur Verfügung stellen.
|
|
|
|
## Fehlerbehebung
|
|
|
|
Falls die OAuth-Authentifizierung nicht funktioniert:
|
|
|
|
1. Prüfen Sie, ob die Callback-URL exakt mit der in GitHub konfigurierten URL übereinstimmt
|
|
2. Stellen Sie sicher, dass der Docker-Container die Umgebungsvariablen korrekt übernimmt
|
|
3. Überprüfen Sie die Netzwerkerreichbarkeit zwischen dem Frontend und dem GitHub-Server
|
|
4. Prüfen Sie die Frontend-Logs auf OAuth-bezogene Fehlermeldungen |