Clerk Auth vs. Replit Auth — Com o Clerk Auth (esta página), seu app recebe seu próprio tenant de autenticação com marca totalmente personalizável e contas de usuário independentes do Replit. Com o Replit Auth, os usuários fazem login com contas do Replit e veem páginas de login com a marca do Replit. Escolha o Clerk Auth quando quiser sua própria marca na experiência de login ou precisar de contas de usuário separadas do Replit.
Clerk Auth vs. Replit Auth em resumo
| Clerk Auth | Replit Auth | |
|---|---|---|
| Contas de usuário | Os usuários criam contas dentro do seu app (nenhuma conta do Replit necessária) | Os usuários fazem login com uma conta do Replit |
| Marca | Totalmente personalizável — nome, ícone e cores do seu app | Página de login com a marca do Replit |
| Credenciais SSO | Traga suas próprias credenciais OAuth por provedor | Usa os apps OAuth compartilhados do Replit |
| Ambientes | Ambientes de Desenvolvimento e Produção separados | Ambiente único |
| Indicações | Nenhuma integração com Indicações do Replit | Cadastros contam para as Indicações do Replit |
| Ideal para | Apps com marca própria, produtos profissionais/comerciais | Configuração rápida, apps onde a marca do Replit é aceitável |
Começando
Para adicionar o Clerk Auth ao seu app, inclua-o no seu prompt do Agent:Como o Clerk Auth funciona com o Replit
Quando o Agent configura o Clerk Auth para o seu app, ele:- Cria um tenant Clerk dedicado — Seu app recebe seu próprio aplicativo Clerk com ambientes de Desenvolvimento e Produção separados
- Provisiona credenciais — Chaves de API e segredos são armazenados como variáveis de ambiente
- Configura um proxy — A autenticação funciona perfeitamente no seu domínio publicado
- Configura rotas de login e cadastro — Componentes React pré-construídos do Clerk são adicionados ao seu app
- Adiciona middleware do lado do servidor — Suas rotas de API são protegidas com o middleware Express do Clerk
Você não precisa criar uma conta Clerk nem gerenciar nenhuma infraestrutura. Tudo é gerenciado automaticamente para você pelo Replit.
Capacidades
O que é suportado
O Clerk Auth oferece ao seu app:- Contas de usuário independentes — Os usuários do seu app não são usuários do Replit; eles existem apenas dentro do tenant Clerk do seu app
- Páginas de login totalmente com marca própria — O nome, logo, cores, fontes e textos do seu app nas páginas de login e cadastro são configurados no código do seu app
- SSO com marca personalizada — Forneça suas próprias credenciais OAuth por provedor para que a tela de consentimento OAuth do provedor exiba o nome e a marca do seu app em vez dos padrões genéricos
- Autenticação por e-mail e senha — Cadastro e login integrados com verificação por e-mail
- Login social (SSO) — Deixe os usuários fazerem login com Google, GitHub, Apple ou X (Twitter)
- Gerenciamento de usuários — Veja, pesquise e modere usuários no painel Auth
- Gerenciamento de sessão — Tokens de sessão seguros gerenciados automaticamente
- Ambientes de Desenvolvimento e Produção — Teste a autenticação em desenvolvimento antes de publicar
Você pode gerenciar a maior parte da configuração do Clerk Auth na ferramenta Auth do Editor de Projeto — nenhuma conta Clerk é necessária, e não é preciso acessar o painel do Clerk.
O que não é suportado
Os seguintes recursos não estão disponíveis atualmente no Clerk Auth (em comparação com um app Clerk externo configurado por você mesmo). Consulte este FAQ para o detalhamento completo.- Login com número de telefone — Login e verificação baseados em SMS
- Suporte a MFA — Autenticação multifator para usuários finais
- Cobertura completa de provedores SSO — Apenas Google, GitHub, Apple e X são suportados atualmente
- Tenants de organização — Os recursos de organização e membros de equipe do Clerk
Ambientes de Desenvolvimento e Produção
Todo app com Clerk Auth recebe dois ambientes Clerk completamente separados: um ambiente de Desenvolvimento que alimenta seu app de dev/preview enquanto você constrói, e um ambiente de Produção que alimenta seu app publicado. Esses ambientes são isolados por design — eles têm chaves de API separadas e bases de usuários separadas.Chaves de API separadas
Cada ambiente tem suas próprias chaves de API publicável e secreta. As chaves expostas ao seu app são trocadas automaticamente dependendo se o app está rodando em desenvolvimento ou em produção:- No seu workspace, os secrets
CLERK_PUBLISHABLE_KEYeCLERK_SECRET_KEYcontêm chaves de teste (pk_test...esk_test...) que apontam para o ambiente de Desenvolvimento.

- Quando você publica seu app, a implantação publicada roda com chaves ativas (
pk_live...esk_live...) que apontam para o ambiente de Produção. Para verificar os prefixos, abra Publishing → Overview → Adjust settings e inspecioneCLERK_PUBLISHABLE_KEYeCLERK_SECRET_KEY.

Você não precisa fazer nada para alternar entre ambientes — o Replit gerencia as chaves de Desenvolvimento e Produção automaticamente. Basta desenvolver, testar e publicar — está tudo pronto.
Bases de usuários separadas
Cada ambiente tem sua própria base de usuários. Contas que se cadastram no ambiente de Desenvolvimento não existem no ambiente de Produção, e vice-versa:- Um usuário que se cadastra ao testar no app de dev/preview é criado apenas na base de Desenvolvimento.
- Um usuário que se cadastra no seu app publicado é criado apenas na base de Produção.
- Sessões, metadados de usuário e quaisquer dados que você vincule a um
userIddo Clerk também ficam restritos ao ambiente em que a conta foi criada.
Desenvolvimento é onde você experimenta e constrói; Produção atende os usuários reais do seu app em produção. Os dois são intencionalmente isolados, então contas e dados criados em Desenvolvimento não aparecerão em Produção.
Gerenciando usuários
O painel Auth no Editor de Projeto oferece uma visão completa dos seus usuários autenticados. Como o Clerk Auth cria uma base de usuários separada para o seu app, os usuários listados aqui são contas no seu app — não contas do Replit.
- Ver todos os usuários com detalhes como e-mail, nome, último login e data de criação da conta
- Pesquisar e filtrar para encontrar usuários específicos
- Banir ou desbanir usuários para controlar o acesso ao seu app
- Ordenar usuários por diferentes critérios
- Trocar de ambiente — Alterne entre Desenvolvimento e Produção para gerenciar usuários em cada um
Personalizando sua página de login
A marca visual das suas páginas de login e cadastro — o nome do app, logo, cores, fontes e textos — é configurada no código do seu app, não no painel Auth. Para alterá-la, peça ao Agent:appearance e localization passadas para <ClerkProvider> e pelo arquivo do logo no diretório public/ do seu app. O Agent mantém isso sincronizado com o restante do tema do seu app.
O nome do app mostrado na própria tela de consentimento do Google, Apple, GitHub ou X (a tela que aparece depois que um usuário clica em “Sign in with Google”, etc.) é separado — ele vem do app OAuth registrado com esse provedor e não é alterado editando o código da sua página de login. Para alterá-lo, configure credenciais OAuth personalizadas para aquele provedor.
Configurando provedores de login
O Clerk Auth suporta Google, GitHub, Apple e X como provedores de login social. Na aba Configure do painel Auth, você controla quais provedores aparecem na sua página de login e — em Produção — se cada provedor usa credenciais OAuth gerenciadas pelo Replit ou suas próprias credenciais personalizadas para login com marca própria.
- Ativar ou desativar um provedor — Use o alternador para controlar se o provedor aparece na sua página de login. Provedores desativados ficam ocultos dos usuários.
- Configurar credenciais OAuth personalizadas (somente Produção) — Veja Configurando credenciais OAuth para um provedor SSO abaixo.
Configurando credenciais OAuth para um provedor SSO
Por padrão, os provedores usam credenciais gerenciadas pelo Replit — o login funciona sem configuração, mas a tela de consentimento OAuth mostra a marca do Replit. Alterne para Custom credentials para usar seu próprio cliente OAuth do console de desenvolvedor do provedor, para que a tela de consentimento exiba o nome e a marca do seu app.- Abra o painel Auth no Editor de Projeto. Vá para a aba Configure, depois em SSO providers na barra lateral selecione Production.

- Selecione o ícone Edit ao lado do provedor que você quer configurar. Replit-managed credentials é selecionado por padrão.

- Selecione Custom credentials. O painel se expande para mostrar os campos de credenciais e uma checklist de Provider setup com os valores que você precisa registrar no lado do provedor.

- Siga as instruções para concluir a configuração. As instruções contêm links diretos para o console e para os documentos de ajuda relevantes. Você também pode encontrar esses documentos de ajuda em Recursos adicionais para o seu provedor.
- Preencha todos os valores de credenciais obrigatórios.
- No console de desenvolvedor do provedor, registre cada item listado na checklist de Provider setup no portal de desenvolvedor do provedor. Use os ícones de cópia para copiar cada valor exatamente, e marque os itens conforme os completa, ou selecione Mark all as done quando terminar.
- Selecione Save changes.
Revalidando a configuração após alterações de domínio
Operações relacionadas a domínio — como vincular um novo domínio externo ou comprar um domínio através do Replit — podem alterar as URLs de callback de redirecionamento e as origens JavaScript do seu app. Quando isso acontece, qualquer provedor configurado com credenciais personalizadas pode precisar ter os novos valores registrados no seu console de desenvolvedor. Após uma alteração de domínio, volte para a aba Configure. Lembretes de configuração aparecem como ícones de aviso na aba, na barra lateral e ao lado dos provedores na lista SSO providers. Um ícone de aviso e setup steps remaining ao lado de um provedor significam que a checklist de Provider setup desse provedor tem novos itens a completar.
Configuração de domínio para verificação de e-mail
Se o seu app oferece cadastro por e-mail e senha, o Clerk envia um código de verificação para a caixa de entrada de cada novo usuário. Configurar seu domínio para envio de e-mail garante que esses códigos cheguem a partir da URL do seu app, em vez de serem retardados ou bloqueados por filtros de spam.Quando você precisa dessa configuração
Você só precisa configurar registros DNS quando seu app vincula um domínio externo gerenciado por outro provedor (por exemplo, um domínio que você registrou com Cloudflare, GoDaddy, Namecheap ou similar). Nenhuma configuração é necessária se o seu app é servido a partir de:- Um subdomínio
.replit.app - Um domínio comprado através do Replit
Adicione registros DNS para o envio de e-mail
Para autorizar o seu app a enviar e-mails de verificação a partir do seu domínio externo, adicione um conjunto de registros DNS no seu provedor de domínio.- No Editor de Projeto, abra Publishing.
- Selecione Domains.
- Encontre seu domínio externo vinculado e selecione Manage.
- Em Authentication DNS setup required, copie os registros CNAME exibidos pelo Replit — esses são os registros que o Clerk precisa para enviar e-mails de verificação a partir do seu domínio.
- Faça login no seu provedor de DNS (Cloudflare, GoDaddy, Namecheap, etc.) e adicione cada registro exatamente como mostrado.

Solução de problemas
- E-mails de verificação não chegam — Confirme que cada registro foi adicionado exatamente como mostrado no painel Manage, incluindo pontos finais quando exigido pelo seu provedor de DNS. Verifique a pasta de spam do destinatário.
- Registros ainda não detectados — Aguarde a propagação do DNS (até 48 horas) e verifique novamente o painel Manage por registros ainda marcados como ausentes.
Melhores práticas de segurança
- Sempre valide no servidor — Verifique a autenticação nas suas rotas de API, não apenas na interface
- Use variáveis de ambiente — Nunca codifique chaves ou segredos diretamente no seu código
- Mantenha o middleware do proxy em primeiro lugar — O proxy do Clerk precisa ser montado antes dos body parsers no seu app Express
- Não redirecione a página inicial para o login — Mantenha sua landing page acessível a visitantes não autenticados
FAQ
Preciso de uma conta Clerk para usar o Clerk Auth?
Não. O tenant Clerk por trás do Clerk Auth é criado e gerenciado automaticamente pelo Replit quando o Agent configura seu app — você não precisa se cadastrar no Clerk nem gerenciar nenhuma infraestrutura do Clerk por conta própria.Posso acessar o painel do Clerk para a instância Clerk gerenciada pelo Replit?
Não. A instância Clerk gerenciada pelo Replit não é exposta através do painel do Clerk. Gerencie-a a partir da ferramenta Auth no Editor de Projeto — é lá que você configura provedores, visualiza usuários e alterna entre os ambientes de Desenvolvimento e Produção.Minha chave publicável do Clerk começa com pk_test. Como eu troco para uma chave ativa?
Você não precisa. As chaves pk_test... e sk_test... que você vê no painel Secrets do workspace pertencem ao ambiente Clerk de Desenvolvimento do seu app e são usadas enquanto você constrói. Quando você publica seu app, a implantação roda automaticamente com as chaves pk_live... e sk_live... do ambiente de Produção. Para verificar, abra Publishing → Overview → Adjust settings no seu Workspace e confira o valor de CLERK_PUBLISHABLE_KEY para o app publicado — ele vai começar com pk_live. Não edite essas chaves manualmente. Veja Ambientes de Desenvolvimento e Produção para o detalhamento completo.
Por que não consigo fazer login no meu app publicado com a conta que criei durante o desenvolvimento?
Os ambientes de Desenvolvimento e Produção do Clerk Auth têm bases de usuários separadas. Uma conta que você cria no app de dev/preview existe apenas no ambiente de Desenvolvimento e não é copiada para Produção quando você publica — você vai precisar se cadastrar novamente no app publicado. O mesmo vale para qualquer dado que você tenha vinculado a umuserId do Clerk. Abra o painel Auth no seu Workspace e use o alternador de ambiente na aba Users para inspecionar os usuários em cada ambiente. Veja Bases de usuários separadas para detalhes.
O Clerk Auth é gratuito?
O Clerk Auth é gratuito por enquanto. Preços baseados em uso podem ser introduzidos posteriormente, em linha com outros serviços baseados em uso do Replit. Quaisquer cobranças futuras serão aplicadas através do seu faturamento existente do Replit — você não vai precisar de uma fatura ou forma de pagamento separada do Clerk.O Clerk Auth tem um limite de MAU como os planos externos do Clerk?
Não. O Clerk Auth não impõe um limite de usuários ativos mensais (MAU), diferente dos planos externos do Clerk, que limitam MAUs por camada.Como o Clerk Auth se compara ao Clerk externo?
O tenant Clerk gerenciado pelo Replit por trás do Clerk Auth tem algumas particularidades em comparação com apps Clerk que você cria na sua própria conta Clerk (Clerk externo). A tabela abaixo destaca onde os dois diferem atualmente — isso reflete o estado atual do Clerk Auth, e o conjunto de recursos suportados vai continuar evoluindo.| Clerk Auth | Clerk externo | |
|---|---|---|
| Configuração | Provisionado automaticamente pelo Replit | Configurado por você mesmo |
| Propriedade do tenant Clerk | Gerenciado pelo Replit, pertence ao seu app | Pertence à sua conta Clerk |
| Estrutura de tarifas | Atualmente gratuito (planeja ter pay-as-you-go no futuro) | Assinatura + pay-as-you-go |
| Faturamento | Faturamento do Replit (atualmente gratuito) | Faturamento na sua conta Clerk |
| Limite de MAU | Ilimitado | Limitação por camadas |
| Configuração de proxy e domínio | Automatizada para replit.app e domínio comprado, manual para domínio vinculado | Manual |
| Provedores SSO | Suportado em determinados provedores: Google, Apple, GitHub, X | Suporta mais provedores |
| Superfície de gerenciamento de usuários | Ferramenta Auth no Editor de Projeto | Painel do app Clerk |
| SMS | Não suportado | Suportado |
| MFA | Não suportado | Suportado |
| Tenants de organização | Não suportado | Suportado |
Que configuração comum do Clerk Auth eu preciso tratar manualmente?
A maior parte da configuração do Clerk Auth é automatizada, mas algumas configurações exigem que você tome uma ação fora da ferramenta Auth:- Credenciais OAuth personalizadas para provedores SSO — Se você quiser que a tela de consentimento do provedor exiba o nome e a marca do seu app (em vez dos padrões do Replit), registre um app OAuth no console de desenvolvedor do provedor e cole as credenciais de volta no painel Auth. Veja Configurando credenciais OAuth para um provedor SSO.
- Registros DNS para verificação de e-mail em domínios externos — Se o seu app vincula um domínio externo gerenciado por outro provedor, você vai precisar adicionar registros DNS para que os e-mails de verificação sejam entregues a partir do seu domínio. Veja Configuração de domínio para verificação de e-mail.
Posso usar meu próprio app Clerk em vez do gerenciado pelo Replit?
Sim. Se o seu app já tem um app Clerk gerenciado pelo Replit provisionado, exclua-o primeiro antes de conectar seu próprio app Clerk externo:- Abra o painel Auth no Editor de Projeto.
- Vá para a aba Configure.
- Role até o final da página e clique em Delete Clerk app.
Recursos adicionais
- Migrando um app existente para o Clerk Auth — Melhores práticas para mover um app em produção com dados de usuário existentes para o Clerk Auth sem quebrar a continuidade da conta
- Configurar Google SSO — Configure credenciais personalizadas do Google OAuth
- Configurar GitHub SSO — Configure credenciais personalizadas do GitHub OAuth
- Configurar Apple SSO — Configure credenciais personalizadas do Apple Sign In
- Configurar X (Twitter) SSO — Configure credenciais personalizadas do X OAuth
- Documentação do Clerk — Referência para quem integra um app Clerk externo