fix: resolve infinite recursion in admin_users RLS policy
The admin_users policy was checking if user is admin by querying the same table, causing infinite recursion. Changed to allow users to view their own admin record directly using auth.uid() = user_id. This fixes the error: 'infinite recursion detected in policy for relation admin_users'
This commit is contained in:
@@ -283,9 +283,9 @@ CREATE POLICY "Admins can view all credits" ON user_credits FOR SELECT USING (
|
||||
EXISTS (SELECT 1 FROM admin_users WHERE user_id = auth.uid())
|
||||
);
|
||||
|
||||
-- Policies for admin_users (only admins can view)
|
||||
CREATE POLICY "Admins can view admin users" ON admin_users FOR SELECT USING (
|
||||
EXISTS (SELECT 1 FROM admin_users WHERE user_id = auth.uid())
|
||||
-- Policies for admin_users (users can see their own admin record)
|
||||
CREATE POLICY "Users can view their own admin record" ON admin_users FOR SELECT USING (
|
||||
auth.uid() = user_id
|
||||
);
|
||||
|
||||
-- Note: To add robin as admin, run this after getting the user_id:
|
||||
|
||||
Reference in New Issue
Block a user