Visão Geral do Single Sign-On¶
Sumário¶
- Introdução e Visão Geral
- Guias por Provedor
- Etapas de Configuração
- Configuração do Dashboard
- Configuração do Backend
- Teste de Login
- Resolução de Problemas
- Provedores Suportados
Introdução e Visão Geral¶
Este guia fornece instruções passo a passo para integrar Single Sign-On (SSO) à plataforma digna usando OpenID Connect (OIDC).
O Que é SSO?¶
O Single Sign-On permite que os usuários façam login no digna com segurança usando suas credenciais corporativas por meio de provedores de identidade externos. Os usuários podem se autenticar com suas credenciais corporativas em vez de gerenciar senhas separadas para o digna.
Como Funciona¶
O SSO no digna é implementado usando o protocolo OIDC. Vários provedores de identidade podem ser configurados em paralelo ajustando dois arquivos de configuração principais:
dashboard_config.toml— Controla a interface de login do frontendconfig.toml— Configura as conexões OIDC do backend
Provedores Suportados¶
Os exemplos deste guia usam Microsoft e Google, mas qualquer provedor compatível com OIDC pode ser integrado seguindo a mesma estrutura.
Guias por Provedor¶
Todo provedor precisa dos mesmos quatro valores — um client ID, um client secret, um URI de redirect e uma URL de discovery —, mas cada um os coloca em um lugar diferente do seu console de administração, e vários têm uma etapa específica que os outros não têm. Os guias abaixo cobrem essa metade do trabalho; esta página cobre a metade do digna, que é idêntica para todos eles.
| Provedor | Guia | Vale a pena saber |
|---|---|---|
| AD FS | Configurar SSO com AD FS | Auto-hospedado; o único provedor aqui em que você controla o serviço de tokens |
| Auth0 | Configurar SSO com Auth0 | A URL de discovery é por tenant, e domínios personalizados a alteram |
| Google Workspace | Configurar SSO com Google Workspace | A tela de consentimento deve ser publicada antes que usuários que não são de teste possam fazer login |
| Keycloak | Configurar SSO com Keycloak | Auto-hospedado; a URL de discovery é por realm |
| Microsoft Entra ID | Configurar SSO com Microsoft Entra ID | O ID do tenant aparece na URL de discovery; os secrets expiram |
| Okta | Configurar SSO com Okta | A escolha do servidor de autorização altera a URL de discovery |
| OneLogin | Configurar SSO com OneLogin | O tipo de app OIDC deve ser escolhido na criação e não pode ser alterado |
| PingOne | Configurar SSO com PingOne | O ID do ambiente aparece na URL de discovery |
Qualquer outro provedor compatível com OIDC funciona da mesma forma — veja Outros Provedores OIDC.
Etapas de Configuração¶
A configuração de SSO requer alterações em dois arquivos. Esta seção explica como configurar cada um deles.
Visão Geral dos Arquivos de Configuração¶
| Arquivo | Local | Finalidade |
|---|---|---|
| dashboard_config.toml | dashboard/dashboard_config.toml | Interface de login do frontend |
| config.toml | /config.toml | Conexões OIDC do backend |
Ambos os arquivos devem ser configurados para que o SSO funcione corretamente.
Configuração do Dashboard¶
Local do Arquivo¶
Passo 1: Adicionar Provedores OIDC¶
Adicione entradas no array [[login.oidc]] para cada provedor de identidade que você deseja suportar.
Exemplo com Microsoft e Google:
[[login.oidc]]
key = "microsoft"
label = "Login with Microsoft"
[[login.oidc]]
key = "google"
label = "Login with Google"
Passo 2: Configurar as Opções de Login¶
Especifique se o login com senha deve ser permitido:
Parâmetros de Configuração¶
Seção [[login.oidc]]¶
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
key | string | Sim | Identificador único da conexão OIDC (deve corresponder à key em config.toml) |
label | string | Sim | Texto exibido no botão de login (ex.: "Login with Microsoft") |
Seção [login]¶
| Parâmetro | Tipo | Padrão | Descrição |
|---|---|---|---|
usePassword | boolean | false | Permite login com senha além do SSO |
Entendendo o usePassword¶
Se usePassword = true: - A tela de login mostra botões de SSO (ex.: "Login with Microsoft") - A tela de login também mostra campos de nome de usuário e senha - Os usuários podem se autenticar com qualquer um dos métodos - Permite configurações híbridas em que alguns usuários usam SSO e outros usam senhas
Se usePassword = false (ou omitido): - A tela de login mostra apenas botões de SSO - Sem campos de nome de usuário/senha - Apenas a autenticação OIDC está disponível
Dica
O login com senha só está disponível para usuários que foram criados com senha usando o comando digna user add ou pelo dashboard.
Exemplo Completo¶
[login]
usePassword = true
[[login.oidc]]
key = "microsoft"
label = "Login with Microsoft"
[[login.oidc]]
key = "google"
label = "Login with Google"
[[login.oidc]]
key = "okta"
label = "Login with Okta"
Configuração do Backend¶
Local do Arquivo¶
(Diretório raiz da instalação do digna)
Passo 1: Adicionar Seções de Provedores OIDC¶
Cada provedor deve ter uma seção [oidc_clients.<key>] dedicada. A key deve corresponder à key definida em dashboard_config.toml.
Configuração da Microsoft¶
[oidc_clients.microsoft]
DIGNA_OIDC_CLIENT_ID = "<client_id>"
DIGNA_OIDC_CLIENT_SECRET = "<client_secret>"
DIGNA_OIDC_REDIRECT_URI = "http://localhost:5173/oidc/callback"
DIGNA_OIDC_CONFIGURATION_URL = "https://login.microsoftonline.com/<tenant_id>/v2.0/.well-known/openid-configuration"
Configuração do Google¶
[oidc_clients.google]
DIGNA_OIDC_CLIENT_ID = "<client_id>"
DIGNA_OIDC_CLIENT_SECRET = "<client_secret>"
DIGNA_OIDC_REDIRECT_URI = "http://localhost:5173/oidc/callback"
DIGNA_OIDC_CONFIGURATION_URL = "https://accounts.google.com/.well-known/openid-configuration"
Parâmetros de Configuração¶
| Parâmetro | Tipo | Obrigatório | Descrição | Exemplo |
|---|---|---|---|---|
DIGNA_OIDC_CLIENT_ID | string | Sim | Client ID do provedor de identidade | abc123xyz789 |
DIGNA_OIDC_CLIENT_SECRET | string | Sim | Client secret do provedor de identidade | secret_xyz789abc123 |
DIGNA_OIDC_REDIRECT_URI | string | Sim | URL de callback após a autenticação | http://localhost:5173/oidc/callback |
DIGNA_OIDC_CONFIGURATION_URL | string | Sim | Endpoint de configuração OIDC | https://login.microsoftonline.com/... |
Importante
Substitua os valores de exemplo (<client_id>, <client_secret>, <tenant_id>) pelas credenciais reais do portal de desenvolvedor do seu provedor de identidade.
URI de Redirect¶
O URI de redirect deve ser o mesmo na configuração do seu provedor de identidade:
Se o digna estiver hospedado em outro domínio, ajuste de acordo: - Local: http://localhost:5173/oidc/callback - Produção: https://digna.yourdomain.com/oidc/callback
Exemplo Completo¶
[oidc_clients.microsoft]
DIGNA_OIDC_CLIENT_ID = "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
DIGNA_OIDC_CLIENT_SECRET = "abc123xyz789def456ghi"
DIGNA_OIDC_REDIRECT_URI = "https://digna.yourdomain.com/oidc/callback"
DIGNA_OIDC_CONFIGURATION_URL = "https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration"
[oidc_clients.google]
DIGNA_OIDC_CLIENT_ID = "123456789-abcdefghijklmnopqrstuvwxyz.apps.googleusercontent.com"
DIGNA_OIDC_CLIENT_SECRET = "google_secret_xyz789"
DIGNA_OIDC_REDIRECT_URI = "https://digna.yourdomain.com/oidc/callback"
DIGNA_OIDC_CONFIGURATION_URL = "https://accounts.google.com/.well-known/openid-configuration"
Teste de Login¶
Após concluir a configuração, verifique se o SSO está funcionando corretamente.
Lista de Verificação Antes do Teste¶
Antes de testar, certifique-se de que:
-
dashboard_config.tomlfoi atualizado com os provedores OIDC -
config.tomlfoi atualizado com as credenciais OIDC - Ambos os arquivos foram salvos
- As credenciais estão corretas (client ID, client secret)
- O URI de redirect corresponde à URL da sua implantação
- A aplicação no provedor de identidade está configurada com o URI de redirect
Etapas de Teste¶
Passo 1: Reiniciar os Serviços¶
Reinicie o backend do digna e o servidor web para aplicar as alterações.
Se estiver executando como serviço no Windows:
Se estiver executando como serviço no Linux ou macOS:
Se estiver executando manualmente:
Reinicie também o servidor web — IIS ou Tomcat no Windows, nginx ou Apache no Linux e macOS.
Passo 2: Abrir o Dashboard¶
Abra o dashboard do digna no seu navegador:
(ou a URL do dashboard que você configurou)
Passo 3: Verificar os Botões de Login¶
Verifique se os botões de login aparecem para cada provedor configurado:
- Deve aparecer o botão "Login with Microsoft"
- Deve aparecer o botão "Login with Google"
- (Se usePassword = true) Devem aparecer os campos de nome de usuário/senha
Se os botões não aparecerem: - Verifique se dashboard_config.toml foi salvo - Verifique se o serviço do dashboard foi reiniciado - Verifique o console do navegador (F12) em busca de erros
Passo 4: Testar o Login com SSO¶
Clique em um dos botões de SSO (ex.: "Login with Microsoft"):
- Você deve ser redirecionado para a página de login do provedor de identidade
- Faça login com suas credenciais corporativas
- Você deve ser redirecionado de volta ao digna
- Você deve estar logado no digna
Passo 5: Verificar a Criação do Usuário¶
Após um login com SSO bem-sucedido:
- O usuário deve ser criado automaticamente no digna
- O usuário deve estar logado
- O perfil do usuário deve exibir as credenciais do seu provedor de identidade
- Você deve ver o dashboard do digna
Passo 6: Testar o Login com Senha (Se Habilitado)¶
Se usePassword = true:
- Faça logout do digna
- Na página de login, insira um nome de usuário e uma senha
- Você deve conseguir fazer login com as credenciais de senha
Resolução de Problemas¶
Os Botões de Login Não Aparecem¶
Sintomas: - Botões de login OIDC não visíveis na página de login - Apenas os campos de senha aparecem (se usePassword = true)
Causas e Soluções: 1. Verifique se dashboard_config.toml está no diretório dashboard/ 2. Verifique se as seções [[login.oidc]] estão presentes com a sintaxe correta 3. Reinicie o serviço do dashboard 4. Limpe o cache do navegador (Ctrl+Shift+Delete ou Cmd+Shift+Delete) 5. Verifique o console do navegador (F12 → aba Console) em busca de erros
Erro de Incompatibilidade do URI de Redirect¶
Sintomas: - Após clicar no botão de SSO, aparece um erro sobre "redirect_uri mismatch" - Erro "The redirect URI is not registered"
Causas e Soluções: 1. Verifique se DIGNA_OIDC_REDIRECT_URI em config.toml está correto 2. Verifique se o URI de redirect está registrado nas configurações do provedor de identidade 3. Certifique-se de que ambos usam URLs idênticas (incluindo protocolo, domínio e caminho) 4. Verifique se há erros de digitação no URI de redirect 5. Se estiver usando HTTPS, certifique-se de que o certificado é válido
Erro de Credenciais de Cliente Inválidas¶
Sintomas: - Erro "Invalid client ID or secret" - A autenticação falha com um erro de credenciais
Causas e Soluções: 1. Verifique se DIGNA_OIDC_CLIENT_ID e DIGNA_OIDC_CLIENT_SECRET estão corretos 2. Certifique-se de que não há espaços extras ou caracteres especiais 3. Verifique se as credenciais não expiraram nem foram revogadas 4. Reinicie o serviço de backend após atualizar a configuração 5. Verifique no console do provedor de identidade se as credenciais estão ativas
O Login Trava ou Expira¶
Sintomas: - Clicar no botão de SSO não faz nada - Tempo esgotado após alguns segundos - O navegador mostra "Failed to connect" ou algo semelhante
Causas e Soluções: 1. Verifique se o backend do digna está em execução: digna repo check 2. Verifique a conectividade de rede com o provedor de identidade 3. Verifique se DIGNA_OIDC_CONFIGURATION_URL está acessível 4. Verifique se as regras de firewall permitem conexões HTTPS de saída 5. Verifique se o backend e o dashboard conseguem se comunicar
Usuários Não São Criados Automaticamente¶
Sintomas: - O login com SSO é bem-sucedido, mas o usuário não é criado no digna - Erro de permissão após o login com SSO
Causas e Soluções: 1. Verifique se a configuração OIDC está correta 2. Verifique se as permissões de usuário estão configuradas 3. Revise os logs do digna em busca de mensagens de erro 4. Reinicie o serviço de backend 5. Entre em contato com support@digna.ai se o problema persistir
Provedores Suportados¶
Testados e Suportados¶
Os seguintes provedores OIDC foram testados e comprovadamente funcionam:
| Provedor | URL de Configuração | Guia de Configuração |
|---|---|---|
| AD FS | https://<adfs_host>/adfs/.well-known/openid-configuration | Configurar SSO com AD FS |
| Auth0 | https://<tenant>.<region>.auth0.com/.well-known/openid-configuration | Configurar SSO com Auth0 |
| Google Workspace | https://accounts.google.com/.well-known/openid-configuration | Configurar SSO com Google Workspace |
| Keycloak | https://<host>/realms/<realm>/.well-known/openid-configuration | Configurar SSO com Keycloak |
| Microsoft Entra ID (Azure AD) | https://login.microsoftonline.com/<tenant_id>/v2.0/.well-known/openid-configuration | Configurar SSO com Microsoft Entra ID |
| Okta | https://<domain>/.well-known/openid-configuration | Configurar SSO com Okta |
| OneLogin | https://<subdomain>.onelogin.com/oidc/2/.well-known/openid-configuration | Configurar SSO com OneLogin |
| PingOne | https://auth.pingone.com/<environment_id>/as/.well-known/openid-configuration | Configurar SSO com PingOne |
Outros Provedores OIDC¶
Qualquer provedor que suporte OpenID Connect pode ser integrado. Informações necessárias:
- Client ID
- Client secret
- URL de configuração do OpenID (geralmente em
/.well-known/openid-configuration) - Scopes suportados (normalmente
openid profile email)
Entre em contato com support@digna.ai se precisar de ajuda para integrar um provedor específico.
Boas Práticas¶
FAÇA: - Use HTTPS em produção (não HTTP) - Armazene os client secrets com segurança (use variáveis de ambiente, se possível) - Troque os secrets periodicamente - Teste primeiro em um ambiente que não seja de produção - Documente quais provedores estão configurados - Monitore os logs de login em busca de atividades incomuns - Mantenha a configuração do provedor de identidade sincronizada com a configuração do digna
NÃO FAÇA: - Armazenar client secrets no controle de versão - Usar URIs de redirect HTTP em produção - Configurar vários provedores com a mesma key - Deixar credenciais padrão/de teste em produção - Expor arquivos de configuração que contenham secrets - Misturar credenciais de desenvolvimento e de produção
Suporte¶
Precisa de ajuda com a configuração de SSO?
- E-mail: support@digna.ai
- Documentação: https://docs.digna.ai
- Site: https://www.digna.ai
Última Atualização: 30 de agosto de 2026
Release: 2026.04
© 2026 digna GmbH — www.digna.ai