Skip to content

Deprecated RLS features

auth.role()#

🌐 The auth.role() function is now deprecated

auth.role() 函数已经被废弃,建议使用在 Postgres 中原生支持的 TO 字段:

🌐 The auth.role() function has been deprecated in favour of using the TO field, natively supported within Postgres:

-- DEPRECATED
create policy "Public profiles are viewable by everyone."
on profiles for select using (
auth.role() = 'authenticated' or auth.role() = 'anon'
);
-- RECOMMENDED
create policy "Public profiles are viewable by everyone."
on profiles for select
to authenticated, anon
using (
true
);

auth.email()#

🌐 The auth.email() function is now deprecated

auth.email() 函数已被弃用,建议使用一个更通用的函数来返回完整的 JWT:

🌐 The auth.email() function has been deprecated in favour a more generic function to return the full JWT:

- DEPRECATED
create policy "User can view their profile."
on profiles for select using (
auth.email() = email
);
-- RECOMMENDED
create policy "User can view their profile."
on profiles for select using (
(auth.jwt() ->> 'email') = email
);