synops/migrations/032_api_keys.sql
vegard d53304a0f3 Implementer API-nøkkelhåndtering med kryptert lagring
- PG-migrasjon: api_keys-tabell med krypterte nøkler (032)
- AES-256-GCM kryptering via SYNOPS_MASTER_KEY (crypto.rs)
- Admin-endepunkter: list/create/test/deactivate/delete
- Test-tilkobling for OpenRouter, Anthropic, OpenAI, Gemini
- Frontend: /admin/keys med nøkkelliste og opprettskjema
- SYNOPS_MASTER_KEY injiseres via maskinrommet-env.sh
2026-03-19 18:57:01 +00:00

20 lines
636 B
SQL

-- API-nøkler: kryptert lagring av tredjepartsnøkler
-- Ref: docs/infra/nøkkelhåndtering.md
CREATE TABLE api_keys (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
provider TEXT NOT NULL,
label TEXT,
key_encrypted BYTEA NOT NULL,
key_hint TEXT,
is_active BOOLEAN DEFAULT true,
created_at TIMESTAMPTZ DEFAULT now(),
updated_at TIMESTAMPTZ DEFAULT now(),
created_by UUID REFERENCES nodes(id),
last_used TIMESTAMPTZ,
usage_count BIGINT DEFAULT 0
);
CREATE INDEX idx_api_keys_provider ON api_keys(provider, is_active);
GRANT SELECT ON api_keys TO synops_reader;