Secret Management
Übersicht
OOS unterstützt zwei Secret-Backends:
| Provider | Verwendung |
|---|---|
env | Umgebungsvariablen — einfach, für lokale Entwicklung |
vault | HashiCorp Vault KV v2 — sicher, für Produktion |
Provider: env
[secrets]
provider = "env"
OOS liest Secrets aus Umgebungsvariablen mit dem Präfix OOS_:
export OOS_PLUGIN_CERT="-----BEGIN CERTIFICATE-----..."
export OOS_PLUGIN_KEY="-----BEGIN EC PRIVATE KEY-----..."
Einfach für lokale Entwicklung — nicht für Produktion empfohlen.
Provider: vault
[secrets]
provider = "vault"
url = "http://localhost:8200"
token = "hvs.xxxxxxxxxxxx"
path = "oos"
OOS verwendet HashiCorp Vault KV v2. Alle Secrets werden unter einem einzigen Pfad als Felder gespeichert.
Vault KV v2 Setup
1. KV v2 Mount aktivieren
vault secrets enable -path=secret kv-v2
2. Policy erstellen
# oos-policy.hcl
path "secret/data/oos" {
capabilities = ["create", "read", "update"]
}
vault policy write oos-policy oos-policy.hcl
3. Token erstellen
vault token create -policy=oos-policy -ttl=8760h
4. In oos.toml eintragen
[secrets]
provider = "vault"
url = "http://localhost:8200"
token = "hvs.TOKEN_AUS_SCHRITT_3"
path = "oos"
Automatisches Cert-Management
OOS verwaltet TLS-Zertifikate für den Plugin-Server automatisch über Vault:
| Key | Inhalt |
|---|---|
OOS_PLUGIN_CERT | PEM-kodiertes TLS-Zertifikat |
OOS_PLUGIN_KEY | PEM-kodierter privater Schlüssel |
Beim Start des Plugin-Servers:
- OOS prüft ob
OOS_PLUGIN_CERTin Vault existiert - Falls nicht: generiert selbst-signiertes Zertifikat und speichert es
- Hub lädt das Zertifikat beim Connect und pinnt es
Es müssen keine Zertifikate manuell erstellt oder verwaltet werden.