Files
tracksteel_app/supabase/migrations/20250719145707-b4a1f48b-0107-4a4b-a5eb-2e3045a67723.sql

32 lines
1.2 KiB
SQL

-- Criar tabela para registrar pedidos de redefinição de senha
CREATE TABLE public.password_reset_requests (
id uuid NOT NULL DEFAULT gen_random_uuid() PRIMARY KEY,
email text NOT NULL,
user_id uuid REFERENCES auth.users(id),
requested_at timestamp with time zone NOT NULL DEFAULT now(),
status text NOT NULL DEFAULT 'pending',
ip_address text,
user_agent text,
created_at timestamp with time zone NOT NULL DEFAULT now()
);
-- Adicionar RLS (Row Level Security)
ALTER TABLE public.password_reset_requests ENABLE ROW LEVEL SECURITY;
-- Política para admins visualizarem todos os pedidos
CREATE POLICY "Admins can view all password reset requests"
ON public.password_reset_requests
FOR SELECT
USING (has_role(auth.uid(), 'admin'::app_role));
-- Política para permitir inserção de pedidos (qualquer um pode solicitar)
CREATE POLICY "Anyone can create password reset requests"
ON public.password_reset_requests
FOR INSERT
WITH CHECK (true);
-- Índice para melhorar performance nas consultas por email e data
CREATE INDEX idx_password_reset_requests_email ON public.password_reset_requests(email);
CREATE INDEX idx_password_reset_requests_requested_at ON public.password_reset_requests(requested_at DESC);