Métodos de autenticação de usuários no Jitterbit App Builder
Visão geral
Autenticação de usuário é o processo de verificar a identidade de alguém que tenta acessar uma aplicação. Ela determina quem pode fazer login, sob quais condições e com qual nível de confiança. Escolher o método de autenticação correto para sua aplicação determina os detalhes de como o processo de login ocorre, quais recursos vêm integrados e quanto desenvolvimento personalizado sua equipe é responsável.
App Builder suporta estes seis métodos de autenticação de usuário:
Além dos próprios métodos de autenticação, esta página também apresenta os conceitos relacionados de provisionamento de usuários, que diz respeito a como criar contas de usuário programaticamente, e grupos de segurança do provedor, que envolve mapear grupos definidos por um provedor de identidade externo para grupos de segurança do App Builder.
Métodos de autenticação de usuário
Logon único
Logon único (SSO) permite que usuários se autentiquem no App Builder usando credenciais que já gerenciam em um provedor de identidade de terceiros, como Microsoft Entra ID ou Okta. Em vez de manter uma senha separada do App Builder, os usuários se autenticam através do provedor de identidade, que então confirma sua identidade ao App Builder. SSO também suporta provisionamento de usuários e grupos: funções do provedor de identidade ou declarações de grupo podem ser mapeadas para grupos de segurança do App Builder, para que as permissões sejam aplicadas automaticamente no login. Veja Grupos de segurança do provedor para entender como esses mapeamentos funcionam.
App Builder suporta SSO através dos seguintes protocolos, cada um com um guia de configuração dedicado:
-
WS-Federation: Provedor de segurança WS-Federation
-
WAM (Web Access Management): Configurar logon único Symantec SiteMinder
Provedores de identidade compatíveis incluem Microsoft Entra ID, Okta, Salesforce, Symantec SiteMinder (anteriormente CA SiteMinder) e outros provedores compatíveis com OAuth2.
Autenticação de usuário local
Autenticação local é o método de autenticação integrado do App Builder. Os usuários fazem login com um nome de usuário e senha que são armazenados e gerenciados diretamente no App Builder. Este método de autenticação não envolve nenhum provedor de identidade externo ou serviço de diretório.
Quando você usa autenticação local, App Builder gerencia todas as etapas do processo de autenticação: criar contas de usuário, armazenar senhas com segurança, aplicar políticas de senha e fornecer opções de recuperação de senha. É uma escolha adequada para cenários onde um provedor de identidade centralizado não está disponível ou não é necessário.
Para um passo a passo detalhado sobre gerenciar usuários e grupos com autenticação local, veja Gerenciamento de usuários e grupos usando autenticação local.
Autenticação integrada do Windows
Autenticação integrada do Windows (WIA) permite que usuários em um domínio Windows façam login no App Builder sem inserir credenciais explicitamente. Quando um usuário já está conectado ao seu domínio Windows, o navegador passa suas credenciais de sessão para o servidor web automaticamente. O servidor web valida essas credenciais contra o domínio e mapeia a identidade do Windows para uma conta de usuário do App Builder.
Porque a autenticação depende da sessão ativa do Windows do usuário, não há formulário de login. Este método é adequado para ambientes de intranet onde todos os usuários estão em máquinas ingressadas no domínio.
Para instruções de configuração, consulte Configurando autenticação integrada do Windows.
Active Directory
A autenticação do Active Directory permite que os usuários façam login no App Builder usando suas credenciais de domínio existentes (nome de usuário e senha). Diferentemente da autenticação integrada do Windows, que depende da sessão ativa do Windows do usuário, este método usa um formulário de login padrão onde os usuários inserem suas credenciais explicitamente. O servidor web valida essas credenciais contra o domínio do Active Directory e mapeia a identidade para uma conta de usuário do App Builder.
Este método funciona em ambientes onde os usuários não estão em máquinas ingressadas no domínio ou onde um formulário de login explícito é necessário.
Para detalhes de configuração, consulte Provedor de segurança Active Directory.
Autenticação de aplicativo (personalizada)
A autenticação de aplicativo é um método de autenticação personalizado no qual o desenvolvedor constrói e controla todo o processo de login. Em vez de redirecionar os usuários para um provedor de identidade de terceiros, o App Builder os redireciona para uma página dentro do próprio aplicativo.
Diferentemente da autenticação local e do SSO, a autenticação de aplicativo não oferece recursos integrados. O desenvolvedor é responsável por todos os aspectos do fluxo, incluindo:
-
Capturar e validar credenciais do usuário.
-
Implementar autenticação multifator (MFA) se necessário.
-
Criar e provisionar contas de usuário.
-
Atribuir usuários a grupos e configurar as permissões associadas.
-
Criar fluxos de redefinição de senha e recuperação de conta.
-
Aplicar políticas de senha.
Esta abordagem é adequada quando as credenciais precisam ser validadas em relação a uma fonte de dados externa, quando é necessário acesso semi-anônimo ou quando a lógica de autenticação não pode ser tratada por um provedor padrão. Esta abordagem requer significativamente mais trabalho de desenvolvimento do que os outros métodos de autenticação.
Para um guia detalhado sobre como configurar a autenticação de aplicativo, consulte Provedor de segurança Autenticação de Aplicativo.
Acesso anônimo
O acesso anônimo permite que os usuários acessem um aplicativo sem se autenticar. No App Builder, qualquer solicitação não associada a um usuário conectado é automaticamente tratada sob a conta de usuário "anônimo". Os desenvolvedores podem atribuir permissões específicas a esta conta para controlar qual conteúdo é acessível publicamente.
A autenticação anônima é ativada por padrão. É útil para cenários como páginas públicas, páginas de destino ou telas de login personalizadas que devem estar acessíveis antes de um usuário fazer login.
Para configurar quais partes do seu aplicativo os usuários anônimos podem acessar, consulte Acesso anônimo. Para configurar uma fonte de dados para permitir conexões não autenticadas, consulte Autenticação anônima HTTP.
Gerenciamento de identidade
Provisionamento de usuário
O provisionamento de usuário é um mecanismo para criar contas de usuário do App Builder programaticamente, sem exigir criação manual através do IDE. Não é um método de autenticação, mas é comumente usado junto com fluxos de autenticação para criar contas sob demanda.
Como o App Builder não permite que regras CRUD gravem diretamente em suas tabelas de usuários e grupos, ele expõe um objeto de dados público chamado User_Create para este fim. Os desenvolvedores podem criar regras CRUD XP que inserem registros em User_Create para criar novas contas de usuário.
Cada inserção em User_Create requer um ProviderId, que identifica a configuração do provedor de segurança a ser usada para a nova conta. Isso permite que administradores de segurança definam as políticas de autorização aplicadas a novas contas independentemente de como o desenvolvedor implementa a lógica de criação de conta.
Para mais detalhes, consulte Provisionamento de usuários e grupos.
Grupos de segurança do provedor
Muitos provedores de autenticação externa definem seus próprios grupos de segurança, às vezes chamados de funções ou escopos. O App Builder permite que administradores de segurança mapeiem esses grupos definidos pelo provedor para grupos de segurança do App Builder, de modo que as permissões de um usuário no App Builder reflitam sua associação a grupos no provedor externo. Por exemplo, você pode integrar com provedores como Okta, Microsoft Entra ID (Azure AD) ou Auth0.
Cada mapeamento de grupo de segurança do provedor possui as seguintes propriedades:
-
Provedor: O provedor de segurança (usuário ou fonte de dados) ao qual o grupo pertence.
-
Identificador: O nome único atribuído ao grupo pelo provedor de segurança.
-
Grupo: O grupo de segurança do App Builder ao qual o grupo do provedor é mapeado.