chatai/auth_v2.169.0/migrations/20220224000811_update_auth_...

35 lines
895 B
PL/PgSQL

-- update auth functions
create or replace function {{ index .Options "Namespace" }}.uid()
returns uuid
language sql stable
as $$
select
coalesce(
nullif(current_setting('request.jwt.claim.sub', true), ''),
(nullif(current_setting('request.jwt.claims', true), '')::jsonb ->> 'sub')
)::uuid
$$;
create or replace function {{ index .Options "Namespace" }}.role()
returns text
language sql stable
as $$
select
coalesce(
nullif(current_setting('request.jwt.claim.role', true), ''),
(nullif(current_setting('request.jwt.claims', true), '')::jsonb ->> 'role')
)::text
$$;
create or replace function {{ index .Options "Namespace" }}.email()
returns text
language sql stable
as $$
select
coalesce(
nullif(current_setting('request.jwt.claim.email', true), ''),
(nullif(current_setting('request.jwt.claims', true), '')::jsonb ->> 'email')
)::text
$$;