Sub2API v1.0 - AI API 网关(二开初始版本,基于上游 Wei-Shaw/sub2api)
Release / update-version (push) Has been cancelled
Release / build-frontend (push) Has been cancelled
Release / release (push) Has been cancelled
Release / sync-version-file (push) Has been cancelled
CI / shell (push) Canceled after 0s
CI / test (push) Canceled after 0s
CI / frontend (push) Canceled after 0s
CI / golangci-lint (push) Canceled after 0s
Security Scan / backend-security (push) Canceled after 0s
Security Scan / frontend-security (push) Canceled after 0s
Release / update-version (push) Has been cancelled
Release / build-frontend (push) Has been cancelled
Release / release (push) Has been cancelled
Release / sync-version-file (push) Has been cancelled
CI / shell (push) Canceled after 0s
CI / test (push) Canceled after 0s
CI / frontend (push) Canceled after 0s
CI / golangci-lint (push) Canceled after 0s
Security Scan / backend-security (push) Canceled after 0s
Security Scan / frontend-security (push) Canceled after 0s
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
-- Group image-generation permission is part of the API-key auth snapshot.
|
||||
-- Extend the existing durable invalidation trigger without changing migration 184.
|
||||
|
||||
CREATE OR REPLACE FUNCTION enqueue_group_auth_cache_invalidation()
|
||||
RETURNS TRIGGER
|
||||
LANGUAGE plpgsql
|
||||
AS $$
|
||||
DECLARE
|
||||
target_group_id BIGINT;
|
||||
BEGIN
|
||||
target_group_id := OLD.id;
|
||||
IF TG_OP = 'UPDATE'
|
||||
AND OLD.status IS NOT DISTINCT FROM NEW.status
|
||||
AND OLD.is_exclusive IS NOT DISTINCT FROM NEW.is_exclusive
|
||||
AND OLD.allow_image_generation IS NOT DISTINCT FROM NEW.allow_image_generation
|
||||
AND OLD.deleted_at IS NOT DISTINCT FROM NEW.deleted_at THEN
|
||||
RETURN NEW;
|
||||
END IF;
|
||||
|
||||
INSERT INTO auth_cache_invalidation_outbox (cache_key)
|
||||
SELECT encode(sha256(convert_to(k.key, 'UTF8')), 'hex')
|
||||
FROM api_keys AS k
|
||||
WHERE k.group_id = target_group_id
|
||||
AND k.deleted_at IS NULL
|
||||
AND k.key <> '';
|
||||
IF TG_OP = 'DELETE' THEN
|
||||
RETURN OLD;
|
||||
END IF;
|
||||
RETURN NEW;
|
||||
END;
|
||||
$$;
|
||||
Reference in New Issue
Block a user