teg/backend/external/README.md
2026-06-12 16:51:33 +02:00

72 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Server Folders mit Parametern
## Backend-Proxy
Der bestehende Frontend-Endpunkt bleibt:
```http
GET /admin/server-folders?path=D:\Milestone
POST /admin/server-folders
```
Zusätzlich kann der Proxy diese Parameter auswerten:
```http
GET /admin/server-folders?path=D:\Milestone&schema=http&port=8099&token=CHANGE-ME
```
Aliasnamen:
- `schema`, `scheme`, `agentSchema`, `agentScheme`
- `port`, `agentPort`
- `token`, `agentToken`
Der Proxy entfernt diese Parameter, bevor er an den Agent weiterleitet.
Der Token wird als Header weitergegeben:
```http
X-Server-Folders-Token: <token>
```
## Token-Handling (automatisch)
Der Agent wird **ohne** Token gestartet. Das Backend erzeugt beim Speichern der
Milestone-Einstellungen automatisch einen zufälligen Token und überträgt ihn per
`PUT /agent-token` an den Agent. Der Agent persistiert den Token in einer Datei
(Standard: neben der `.exe`) und nutzt ihn danach für alle weiteren Anfragen
auch nach einem Neustart.
```http
PUT /agent-token
X-Server-Folders-Token: <aktueller-token> # nur nötig, wenn bereits ein Token gesetzt ist
Content-Type: application/json
{ "token": "<neuer-token>" }
```
Solange noch kein Token gesetzt ist, akzeptiert der Agent `PUT /agent-token` auch
ohne Header (Bootstrap). Betreibe den Agent daher in einem vertrauenswürdigen
Netzwerk und speichere die Einstellungen nach dem Start zeitnah.
## Agent starten
```powershell
.\server-folders-agent.exe -port 8099 -roots "Milestone D=D:\Milestone;Milestone E=E:\Milestone"
```
Alternativ weiter per ENV:
```powershell
$env:LISTEN_ADDR=":8099"
$env:SERVER_FOLDER_ROOTS="Milestone D=D:\Milestone;Milestone E=E:\Milestone"
.\server-folders-agent.exe
```
Optionale Parameter:
- `-token` / `SERVER_FOLDER_AGENT_TOKEN`: nur als Start-Seed, falls noch keine
Token-Datei existiert (in der Regel nicht nötig).
- `-token-file` / `SERVER_FOLDER_AGENT_TOKEN_FILE`: Pfad der Token-Datei
(Standard: `server-folders-agent.token` neben der `.exe`).