17 lines
871 B
SQL
17 lines
871 B
SQL
-- Migration: Create external_services_credentials table
|
|
-- Description: Stores encrypted credentials for third-party services (Stripe, Cloudflare, etc.)
|
|
|
|
CREATE TABLE IF NOT EXISTS external_services_credentials (
|
|
id UUID PRIMARY KEY DEFAULT uuid_generate_v7(),
|
|
service_name VARCHAR(50) UNIQUE NOT NULL, -- e.g. 'stripe', 'cloudflare'
|
|
encrypted_payload TEXT NOT NULL, -- RSA Encrypted Base64
|
|
updated_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
|
|
updated_by UUID, -- ID of the admin who updated it
|
|
|
|
FOREIGN KEY (updated_by) REFERENCES users(id) ON DELETE SET NULL
|
|
);
|
|
|
|
-- Index for fast lookup by service name
|
|
CREATE INDEX idx_service_name ON external_services_credentials(service_name);
|
|
|
|
COMMENT ON TABLE external_services_credentials IS 'Stores securely encrypted credentials for external services';
|