diff --git a/README.md b/README.md index 07056de..d2ff39b 100644 --- a/README.md +++ b/README.md @@ -98,10 +98,52 @@ Für das Hochladen zu GitHub: - **Branch**: Ziel-Branch (z.B. `main`) - **Author**: Dein Name für die Metadaten -### 3. GitHub-Token für private Repositories (optional) -1. GitHub → Settings → Developer settings → Personal access tokens -2. Token mit Repository-Berechtigung erstellen -3. Token in den Addon-Einstellungen hinterlegen +### 3. GitHub-Token konfigurieren (optional, aber empfohlen) + +#### Wann wird ein Token benötigt? +- **Private Repositories**: Zugriff auf nicht-öffentliche Repositories +- **Höhere Rate-Limits**: GitHub erlaubt mehr API-Anfragen mit Token +- **Upload-Funktionalität**: Zum Hochladen von Modulen/Templates/Classes zu GitHub + +#### Token erstellen +1. GitHub → **Settings** → **Developer settings** → **Personal access tokens** → **Fine-grained tokens** +2. **Generate new token** +3. Token-Name vergeben (z.B. "REDAXO GitHub Installer") +4. **Repository access** auswählen: + - **All repositories** (für alle Repositories) oder + - **Only select repositories** (für bestimmte Repositories) +5. **Erforderliche Berechtigungen auswählen**: + + **Repository permissions:** + + **Nur zum Installieren (Lesen):** + - ✅ **Contents**: `Read-only` (Repository-Inhalte lesen) + - ✅ **Metadata**: `Read-only` (automatisch gesetzt) + + **Zum Installieren UND Hochladen:** + - ✅ **Contents**: `Read and write` (Repository-Inhalte lesen und schreiben) + - ✅ **Metadata**: `Read-only` (automatisch gesetzt) + + **Alle anderen Berechtigungen sind NICHT erforderlich**: + - ❌ Actions + - ❌ Administration + - ❌ Codespaces + - ❌ Commit statuses + - ❌ Discussions + - ❌ Environments + - ❌ Issues + - ❌ Pull requests + - ❌ etc. + +5. **Expiration** festlegen (empfohlen: 90 Tage oder weniger) +6. Token generieren und **sofort kopieren** (wird nur einmal angezeigt!) +7. Token in REDAXO einfügen: Backend → Addons → GitHub Installer → **Einstellungen** + +#### Sicherheitshinweise +- ⚠️ Token niemals öffentlich teilen oder in Code committen +- 🔒 Token mit minimalen Berechtigungen erstellen +- 🔄 Token regelmäßig erneuern (Ablaufdatum setzen) +- 🗑️ Ungenutzte Token löschen ## 🎯 Verwendung diff --git a/lang/de_de.lang b/lang/de_de.lang index ea454cf..9c7e700 100644 --- a/lang/de_de.lang +++ b/lang/de_de.lang @@ -122,8 +122,9 @@ cache_no_cache = Keine Cache-Dateien gefunden # Settings settings_title = Einstellungen github_token = GitHub Personal Access Token -github_token_help = Erforderlich für höhere Rate-Limits und private Repositories +github_token_help = Erforderlich für höhere Rate-Limits und private Repositories. Erforderliche Berechtigungen: Repository permissions: "Contents" (Read-only für Installieren, Read and write für Upload). Alle anderen Berechtigungen sind nicht erforderlich. github_token_placeholder = GitHub Token eingeben (optional) +github_token_create_info = Token erstellen: GitHub → Settings → Developer settings → Personal access tokens → Fine-grained tokens → Generate new token cache_lifetime = Cache-Lebensdauer (Sekunden) cache_lifetime_help = Wie lange Repository-Daten gecacht werden sollen save_settings = Einstellungen speichern diff --git a/lang/en_gb.lang b/lang/en_gb.lang index 6bd8e54..e4da447 100644 --- a/lang/en_gb.lang +++ b/lang/en_gb.lang @@ -86,8 +86,9 @@ cache_no_cache = No cache files found # Settings settings_title = Settings github_token = GitHub Personal Access Token -github_token_help = Required for higher rate limits and private repositories +github_token_help = Required for higher rate limits and private repositories. Required permissions: Repository permissions: "Contents" (Read-only for installing, Read and write for upload). All other permissions are not required. github_token_placeholder = Enter your GitHub token (optional) +github_token_create_info = Create token: GitHub → Settings → Developer settings → Personal access tokens → Fine-grained tokens → Generate new token cache_lifetime = Cache Lifetime (seconds) cache_lifetime_help = How long to cache repository data save_settings = Save Settings diff --git a/pages/settings.php b/pages/settings.php index 16ac4ec..42af8f9 100644 --- a/pages/settings.php +++ b/pages/settings.php @@ -34,7 +34,8 @@ $n['field'] = ' -
' . $addon->i18n('github_token_help') . '
'; +' . $addon->i18n('github_token_help') . '
+' . $addon->i18n('github_token_create_info') . '
'; $formElements[] = $n; // Cache Lifetime