Ir para o conteúdo

Configurar Autenticação do Aplicativo

App Builder suporta Application Authentication como um tipo de provedor de segurança. Application Authentication permite que os desenvolvedores criem seus próprios formulários de login. Os desenvolvedores podem autenticar clientes usando uma abordagem adequada ao aplicativo.

Talvez você queira configurar a Autenticação de Aplicativo se, por exemplo, quiser que seu aplicativo:

  • Manter suas próprias contas de usuário
  • Validar credenciais com externo
  • Verifique um número de telefone enviando uma senha de uso único (OTP) por mensagem de texto
  • Permitir que os clientes efetuem login de forma semi-anônima

Nota

Veja o Aplicativo anônimo artigo para obter informações sobre como configurar o acesso de Usuário Anônimo a aplicativos.

Requisitos de Autenticação do Aplicativo

As seguintes informações precisam ser configuradas em cada ambiente em que o aplicativo reside (por exemplo, Dev, QA, Produção) para que a autenticação do aplicativo funcione corretamente:

  • Página de login configurada como um aplicativo separado
  • Grupo de provedores de segurança de autenticação do aplicativo
  • Conta(s) de usuário genérica(s)
  • Grupos com funções atribuídas
  • App Builder realm configurado para App

Além dos requisitos acima, dentro do próprio App você precisará configurar:

  • Regra de autenticação
  • Tabela de sessão com campos de login
  • Opcional: Validação de senha
  • Tabela de usuário de nível de aplicativo
  • App Builder como uma fonte de dados adicionada ao aplicativo e vinculada à sua fonte de dados primária

Configurar Página de Login Como Aplicativo Separado

Login personalizado

A página de Login deve ser configurada como um Aplicativo autônomo dentro do seu ambiente de aplicativo e construída a partir da mesma fonte de dados do seu Aplicativo principal. Ela será usada apenas para fins de autenticação e, portanto, precisa de acesso aos dados de credenciais do Usuário.

Esta página de Login é totalmente personalizável. Há algumas informações necessárias nesta página (listadas abaixo) e você pode desejar adicionar informações adicionais conforme necessário para os requisitos específicos do seu aplicativo.

Nota

Se o Usuário Anônimo tiver acesso à página inicial padrão de um aplicativo (configurada nas configurações do aplicativo), ele carregará automaticamente essa página em vez da página padrão App Builder página de login (/auth/login).

Requisitos da Página de Login

  • Painel projetado para ser executado a partir da Sessão
  • A página inteira deve ser acessível pelo Usuário anônimo
  • No mínimo, a página requer um campo Nome de usuário (editável)
  • Opcionalmente, você pode incluir um campo Senha (pode ter a Validação de senha configurada)
  • Botão que permite ao usuário disparar a Regra de autenticação criada para Autenticação de aplicativo. Por exemplo: Login.

    Nota

    Este botão não deve vincular a nenhuma página. Ele deve executar apenas o evento Authenticate, que então carregará automaticamente o App Builder página definida como 'Página Padrão' nas configurações do Provedor de Segurança.

  • Opcional: link Esqueceu a Senha, link Inscreva-se

Provedor de Segurança de Autenticação de Aplicativos

O Application Authentication Security Provider precisa ser configurado para o aplicativo.

Para Configurar o Provedor de Segurança de Autenticação do Aplicativo

  1. Navegue até o IDE
  2. Selecione Provedores de Segurança
  3. Clique em + Autenticação do Usuário no painel Autenticação do Usuário e Nomeie o Provedor de Segurança. Geralmente, ele é nomeado após o aplicativo para o qual está sendo provisionado. Por exemplo: ApplicationManager.

    • Tipo = Autenticação do Aplicativo
    • Prioridade = gerado automaticamente por App Builder
    • Enabled = deve ser habilitado para ser usado. Deixe esta configuração desligada (desabilitada) até que todas as informações necessárias sejam configuradas e você esteja pronto para testar a Autenticação do Aplicativo.
    • Identifier = gerado automaticamente por App Builder. Se você estiver parametrizando essas informações, isso é o que deve estar na tabela de parâmetros como ID do provedor.
    • Na seção Autenticação, selecione Mostrar no formulário de login.
    • Para Default Page, selecione a Page que você quer que um Usuário vá em seu Aplicativo após autenticar na Login Page. Se você não vir a Page que você quer na lista inicialmente, navegue de volta para seu Aplicativo e torne a Page Shared e volte para selecioná-la.
    • Provisionamento não é recomendado para ser preenchido
  4. Clique em + Propriedade em Propriedades. Selecione LoginPath como Parâmetro e, para o próprio Valor, navegue até a página de login de Autenticação do aplicativo e selecione a URL após o Nome de Domínio.

    • Certifique-se de incluir a barra inicial com as informações que você copiou da URL. Por exemplo: /app/Application%20Manager%20LogIn/LogIn%3F%24activepanel%3DA?$activepanel
  5. Salve o registro

Contas de Usuário Genéricas

Para usar a Autenticação de Aplicativo, você precisa de pelo menos uma Conta de Usuário criada para esse propósito, você pode querer ter mais de uma Conta de Usuário dependendo do requisito do seu aplicativo. Crie an App Builder usuário(s) e nomeie-os de acordo com o nível que você deseja que eles vejam no aplicativo após a autenticação. Por exemplo: ApplicationManagerUser, ApplicationManagerDeveloper, ApplicationManagerAdministrator.

A Conta de Usuário é o que App Builder usa para pegar o Usuário especificado e autenticá-lo. Se você precisar de Grupos atribuídos a Usuários que são autenticados por meio desta Conta de Usuário criada, você deve adicionar o(s) Grupo(s) neste estágio.

Em seguida, você criará uma Identidade para o(s) novo(s) Usuário(s). É aqui que você seleciona o grupo Provedor que é o provedor de Autenticação de Aplicativo que você criou, o Usuário (o real App Builder usuário e deve ser o padrão), e um Nome. O Nome é o Nome real da Identidade que você criou. Frequentemente, o Nome é o mesmo que o Usuário. O Identificador não precisa ser definido.

Identidade

App Builder reino Configurado para Aplicativo

  • Um Realm deve ser configurado contendo seu aplicativo e o aplicativo Login app
  • Este Realm deve conter quaisquer Grupos usados pelos Usuários de Autenticação de Aplicativo
  • O Provedor de Segurança de Autenticação de Aplicativo também fará parte do Realm

Para mais informações sobre Realms e configurá-los, consulte Realms artigo.

Regra de Autenticação

Em seguida, você configurará uma Regra de Autenticação a ser usada pela Autenticação de Aplicativo. Crie uma Regra de Negócios CRUD XP que tenha como alvo a visualização Autenticar a partir do App Builder fonte de dados. A fonte de dados de origem deve ser a fonte de dados primária do aplicativo e a fonte de dados de destino será a fonte de dados App Builder fonte de dados, a ação será Inserir. Nomeie esta regra com algo como Autenticar (Autenticação do usuário).

Quando você for projetar a regra CRUD no Business SQL, precisará trazer a tabela Usuário (a tabela que armazena suas credenciais de usuário), a tabela Sessão e, dependendo de como você armazena o que o usuário está fazendo login como o quê, você pode querer trazer uma tabela(s) adicional(ais) como Parâmetro.

A junção interna neste cenário está no nome de usuário que você deseja que eles usem, de modo que se o nome de usuário for igual a algo naquela tabela, o usuário poderá fazer login no aplicativo. Se a validação de senha também estiver sendo configurada, ela estaria no mesmo evento que esta regra CRUD XP.

As 4 colunas a seguir precisam ser configuradas para a Regra de Autenticação:

  1. A Regra deve ter um GUID recém-gerado (newUUID()) configurado para Target AuthenticateID
  2. O ID do provedor de segurança de Autenticação do Aplicativo, este deve Target ProviderId
  3. A Regra precisa do que você está passando como o Nome de Usuário do aplicativo. Isto é o que marca o Usuário para App Builder sabe quem é a pessoa que fez o login. É isso que está sendo usado pela Auditoria em App Builder. É recomendável usar Email ou Nome de usuário, e esta coluna deve ter como alvo AppUserId.
  4. Um Nome de Usuário do Provedor, este é o Usuário ao qual eles têm acesso provisionado no aplicativo. Isso pode ser dinâmico ou codificado, mas é obrigatório e deve ter como Alvo o Nome.

Habilitar Provedor de Segurança

Por fim, com todas as informações descritas neste artigo configuradas, você deve conseguir Habilitar o Provedor de Segurança e testar para ver se a Autenticação do Aplicativo agora está funcionando para seu aplicativo.

Configuração Opcional para Lidar com Usuários Não Autenticados

Quando um usuário não autenticado navega para uma página onde a autenticação do aplicativo está habilitada, você pode controlar onde App Builder redireciona-os. Se você quiser que um Usuário seja redirecionado para a página de login padrão, onde ele pode selecionar um link para chegar à página de login do aplicativo, nenhuma configuração adicional será necessária. Se, no entanto, você quiser que um Usuário seja redirecionado para a página de login do aplicativo automaticamente, há 2 configurações adicionais necessárias:

  1. Autenticação Padrão - Isso informa App Builder qual provedor de segurança você deseja usar para autenticar usuários dentro de um determinado aplicativo.
  2. Redirecionar no desafio - Isso informa App Builder para pular o formulário de login ao redirecionar usuários para seu provedor de autenticação de aplicativo.

Para Configurar o Provedor de Autenticação Padrão

  1. Entre em App Builder como um usuário administrador
  2. Clique no botão IDE
  3. Clique no botão Provedores de segurança
  4. No painel Autenticação do usuário, clique em Mais > Gerenciar aplicativos
  5. Clique no ícone Editar (Lápis) para o aplicativo
  6. Defina Autenticação padrão para o provedor de autenticação do aplicativo
  7. Clique no botão Salvar

Para Configurar o Redirecionamento no Desafio

  1. Clique no botão Voltar para retornar à página Provedores de Segurança
  2. No painel Autenticação do Usuário, clique no ícone Detalhes (Chevron) para seu provedor de Autenticação de Aplicativo
  3. Clique no botão Editar
  4. Marque a opção Redirecionar em Desafio
  5. Clique no botão Salvar

Recursos