FastAPI + PostgreSQL 16. KYC, issue sistemi, permission/group yönetimi, session yönetimi, API client auth (kışla kapısı), officials/persons CRUD. Migration 0001–0013 dahil.
18 lines
958 B
SQL
18 lines
958 B
SQL
-- TC kimlik no şifreli sakla
|
||
ALTER TABLE users ADD COLUMN IF NOT EXISTS tc_kimlik_enc BYTEA;
|
||
ALTER TABLE users ADD COLUMN IF NOT EXISTS tc_kimlik_hash TEXT; -- SHA-256, tekrar kayıt kontrolü
|
||
|
||
-- verification_requests: eski path kolonları yerine şifreli blob path'leri + view token
|
||
ALTER TABLE verification_requests ADD COLUMN IF NOT EXISTS enc_key_id TEXT; -- hangi key versiyonu ile şifrelendi
|
||
ALTER TABLE verification_requests ADD COLUMN IF NOT EXISTS rejection_count INT NOT NULL DEFAULT 0;
|
||
|
||
-- Tek seferlik view token'ları (fotoğraf erişimi için)
|
||
CREATE TABLE IF NOT EXISTS kyc_view_tokens (
|
||
token TEXT PRIMARY KEY,
|
||
request_id BIGINT NOT NULL REFERENCES verification_requests(id) ON DELETE CASCADE,
|
||
created_by BIGINT NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
||
expires_at TIMESTAMPTZ NOT NULL,
|
||
used_at TIMESTAMPTZ
|
||
);
|
||
|
||
CREATE INDEX IF NOT EXISTS idx_kyc_view_tokens_expires ON kyc_view_tokens(expires_at);
|