# šŸš€ Configuração para Produção - SGSE Este documento contĆ©m as instruƧƵes para configurar as variĆ”veis de ambiente necessĆ”rias para colocar o sistema SGSE em produção. --- ## āš ļø IMPORTANTE - SEGURANƇA As configuraƧƵes abaixo sĆ£o **OBRIGATƓRIAS** para garantir a seguranƧa do sistema em produção. **NƃO pule estas etapas!** --- ## šŸ“‹ VariĆ”veis de Ambiente NecessĆ”rias ### 1. `BETTER_AUTH_SECRET` (OBRIGATƓRIO) **O que Ć©:** Chave secreta usada para criptografar tokens de autenticação. **Por que Ć© importante:** Sem um secret Ćŗnico e forte, qualquer pessoa pode falsificar tokens de autenticação e acessar o sistema sem autorização. **Como gerar um secret seguro:** #### **Opção A: PowerShell (Windows)** ```powershell [Convert]::ToBase64String([System.Security.Cryptography.RandomNumberGenerator]::GetBytes(32)) ``` #### **Opção B: Linux/Mac** ```bash openssl rand -base64 32 ``` #### **Opção C: Node.js** ```bash node -e "console.log(require('crypto').randomBytes(32).toString('base64'))" ``` **Exemplo de resultado:** ``` aBc123XyZ789+/aBc123XyZ789+/aBc123XyZ789+/== ``` --- ### 2. `SITE_URL` ou `CONVEX_SITE_URL` (OBRIGATƓRIO) **O que Ć©:** URL base da aplicação onde o sistema estĆ” hospedado. **Exemplos:** - **Desenvolvimento Local:** `http://localhost:5173` - **Produção:** `https://sgse.pe.gov.br` (substitua pela URL real) --- ## šŸ”§ Como Configurar no Convex ### **Passo 1: Acessar o Convex Dashboard** 1. Acesse: https://dashboard.convex.dev 2. FaƧa login com sua conta 3. Selecione o projeto **SGSE** ### **Passo 2: Configurar VariĆ”veis de Ambiente** 1. No menu lateral, clique em **Settings** (ConfiguraƧƵes) 2. Clique na aba **Environment Variables** 3. Adicione as seguintes variĆ”veis: #### **Para Desenvolvimento:** | VariĆ”vel | Valor | |----------|-------| | `BETTER_AUTH_SECRET` | (Gere um usando os comandos acima) | | `SITE_URL` | `http://localhost:5173` | #### **Para Produção:** | VariĆ”vel | Valor | |----------|-------| | `BETTER_AUTH_SECRET` | (Gere um NOVO secret diferente do desenvolvimento) | | `SITE_URL` | `https://sua-url-de-producao.com.br` | ### **Passo 3: Salvar as ConfiguraƧƵes** 1. Clique em **Add** para cada variĆ”vel 2. Clique em **Save** para salvar as alteraƧƵes 3. Aguarde o Convex reiniciar automaticamente --- ## āœ… Verificação Após configurar as variĆ”veis, as mensagens de ERRO e WARN no terminal devem **desaparecer**: ### āŒ Antes (com erro): ``` [ERROR] 'You are using the default secret. Please set `BETTER_AUTH_SECRET`' [WARN] 'Better Auth baseURL is undefined. This is probably a mistake.' ``` ### āœ… Depois (sem erro): ``` āœ” Convex functions ready! ``` --- ## šŸ” Boas PrĆ”ticas de SeguranƧa ### āœ… FAƇA: 1. **Gere secrets diferentes** para desenvolvimento e produção 2. **Nunca compartilhe** o `BETTER_AUTH_SECRET` publicamente 3. **Nunca commite** arquivos `.env` com secrets no Git 4. **Use secrets fortes** com pelo menos 32 caracteres aleatórios 5. **Rotacione o secret** periodicamente em produção 6. **Documente** onde os secrets estĆ£o armazenados (Convex Dashboard) ### āŒ NƃO FAƇA: 1. **NƃO use** "1234" ou "password" como secret 2. **NƃO compartilhe** o secret em e-mails ou mensagens 3. **NƃO commite** o secret no código-fonte 4. **NƃO reutilize** o mesmo secret em mĆŗltiplos ambientes 5. **NƃO deixe** o secret em produção sem configurar --- ## šŸ†˜ Troubleshooting ### Problema: Mensagens de erro ainda aparecem após configurar **Solução:** 1. Verifique se as variĆ”veis foram salvas corretamente no Convex Dashboard 2. Aguarde alguns segundos para o Convex reiniciar 3. Recarregue a aplicação no navegador 4. Verifique os logs do Convex para confirmar que as variĆ”veis foram carregadas ### Problema: Erro "baseURL is undefined" **Solução:** 1. Certifique-se de ter configurado `SITE_URL` no Convex Dashboard 2. Use a URL completa incluindo `http://` ou `https://` 3. NĆ£o adicione barra `/` no final da URL ### Problema: SessƵes nĆ£o funcionam após configurar **Solução:** 1. Limpe os cookies do navegador 2. FaƧa logout e login novamente 3. Verifique se o `BETTER_AUTH_SECRET` estĆ” configurado corretamente --- ## šŸ“ž Suporte Se encontrar problemas durante a configuração: 1. Verifique os logs do Convex Dashboard 2. Consulte a documentação do Convex: https://docs.convex.dev 3. Consulte a documentação do Better Auth: https://www.better-auth.com --- ## šŸ“ Checklist de Produção Antes de colocar o sistema em produção, verifique: - [ ] `BETTER_AUTH_SECRET` configurado no Convex Dashboard - [ ] `SITE_URL` configurado com a URL de produção - [ ] Secret gerado usando mĆ©todo criptograficamente seguro - [ ] Secret Ć© diferente entre desenvolvimento e produção - [ ] Mensagens de erro no terminal foram resolvidas - [ ] Login e autenticação funcionando corretamente - [ ] PermissƵes de acesso configuradas - [ ] Backup do secret armazenado em local seguro --- **Data de Criação:** 27/10/2025 **VersĆ£o:** 1.0 **Autor:** Equipe TI SGSE