101 lines
2.5 KiB
SQL
101 lines
2.5 KiB
SQL
-- ============================================================
|
|
-- Script SQL para criar usuária Julia Carvalho com role ADMIN
|
|
-- Execute este script no Supabase Dashboard > SQL Editor
|
|
-- ============================================================
|
|
|
|
-- 1. Criar usuário no auth.users (SUBSTITUA O ID abaixo por um UUID gerado)
|
|
-- Você pode gerar um UUID em: https://www.uuidgenerator.net/
|
|
-- Ou usar: gen_random_uuid()
|
|
|
|
INSERT INTO auth.users (
|
|
id,
|
|
instance_id,
|
|
email,
|
|
encrypted_password,
|
|
email_confirmed_at,
|
|
created_at,
|
|
updated_at,
|
|
raw_app_meta_data,
|
|
raw_user_meta_data,
|
|
role,
|
|
aud
|
|
)
|
|
VALUES (
|
|
gen_random_uuid(), -- Gera um UUID automaticamente
|
|
'00000000-0000-0000-0000-000000000000',
|
|
'secretaria.mediconnect@gmail.com',
|
|
crypt('secretaria@mediconnect', gen_salt('bf')), -- Hash bcrypt da senha
|
|
NOW(),
|
|
NOW(),
|
|
NOW(),
|
|
'{"provider": "email", "providers": ["email"]}',
|
|
'{"full_name": "Julia Carvalho", "role": "admin"}',
|
|
'authenticated',
|
|
'authenticated'
|
|
)
|
|
ON CONFLICT (email) DO NOTHING
|
|
RETURNING id;
|
|
|
|
-- 2. Obter o ID do usuário criado (copie este ID para usar nos próximos passos)
|
|
-- Execute esta query separadamente e copie o resultado:
|
|
SELECT id, email, raw_user_meta_data
|
|
FROM auth.users
|
|
WHERE email = 'secretaria.mediconnect@gmail.com';
|
|
|
|
-- 3. Criar perfil na tabela users (SUBSTITUA 'UUID_AQUI' pelo ID obtido acima)
|
|
INSERT INTO public.users (
|
|
id,
|
|
email,
|
|
full_name,
|
|
is_admin,
|
|
is_secretary,
|
|
is_admin_or_manager,
|
|
created_at,
|
|
updated_at
|
|
)
|
|
VALUES (
|
|
(SELECT id FROM auth.users WHERE email = 'secretaria.mediconnect@gmail.com'),
|
|
'secretaria.mediconnect@gmail.com',
|
|
'Julia Carvalho',
|
|
true,
|
|
true,
|
|
true,
|
|
NOW(),
|
|
NOW()
|
|
)
|
|
ON CONFLICT (id) DO UPDATE SET
|
|
is_admin = true,
|
|
is_secretary = true,
|
|
is_admin_or_manager = true;
|
|
|
|
-- 4. Adicionar role admin na tabela user_roles
|
|
INSERT INTO public.user_roles (
|
|
user_id,
|
|
role,
|
|
created_at
|
|
)
|
|
VALUES (
|
|
(SELECT id FROM auth.users WHERE email = 'secretaria.mediconnect@gmail.com'),
|
|
'admin',
|
|
NOW()
|
|
)
|
|
ON CONFLICT (user_id, role) DO NOTHING;
|
|
|
|
-- 5. Verificar criação
|
|
SELECT
|
|
u.id,
|
|
u.email,
|
|
u.full_name,
|
|
u.is_admin,
|
|
u.is_secretary,
|
|
ur.role
|
|
FROM public.users u
|
|
LEFT JOIN public.user_roles ur ON ur.user_id = u.id
|
|
WHERE u.email = 'secretaria.mediconnect@gmail.com';
|
|
|
|
-- ============================================================
|
|
-- CREDENCIAIS PARA LOGIN:
|
|
-- Email: secretaria.mediconnect@gmail.com
|
|
-- Senha: secretaria@mediconnect
|
|
-- ============================================================
|