Initial project snapshot
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
CREATE TABLE IF NOT EXISTS resource_secrets (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
organization_id UUID NOT NULL REFERENCES organizations(id) ON DELETE CASCADE,
|
||||
resource_id UUID NOT NULL REFERENCES resources(id) ON DELETE CASCADE,
|
||||
secret_ref TEXT NOT NULL UNIQUE,
|
||||
protocol TEXT NOT NULL,
|
||||
version INTEGER NOT NULL DEFAULT 1,
|
||||
key_id TEXT NOT NULL,
|
||||
algorithm TEXT NOT NULL DEFAULT 'AES-256-GCM',
|
||||
nonce BYTEA NOT NULL,
|
||||
ciphertext BYTEA NOT NULL,
|
||||
payload_sha256 TEXT NOT NULL,
|
||||
metadata JSONB NOT NULL DEFAULT '{}'::JSONB,
|
||||
created_by_user_id UUID REFERENCES users(id) ON DELETE SET NULL,
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
rotated_at TIMESTAMPTZ,
|
||||
UNIQUE (resource_id)
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_resource_secrets_organization_id
|
||||
ON resource_secrets(organization_id);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_resource_secrets_resource_id
|
||||
ON resource_secrets(resource_id);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_resource_secrets_secret_ref
|
||||
ON resource_secrets(secret_ref);
|
||||
Reference in New Issue
Block a user