Ir para o conteúdo

Configurando o Auth0

Auth0 é um provedor de identidade (IdP) que oferece suporte a vários protocolos de autenticação, incluindo autenticação SAML Single Sign-On (SSO). App Builder integra-se com o Auth0 como um Provedor de Serviços (SP). Cada App Builder instância deve ser integrada individualmente com Auth0 e vice-versa. Há três tarefas principais envolvidas:

  1. Registrar App Builder como um cliente Auth0.
  2. Configure o Auth0 como an App Builder provedor de Segurança.
  3. Mapa App Builder usuários para identidades Auth0.

Presume-se que sua organização já tenha uma conta Auth0 existente.

As instruções abaixo se referirão às seguintes propriedades:

Exemplo Notas
App Builder URL do aplicativo https://example.com/App Builder/ A URL de onde App Builder é hospedado. Inclui a barra final.
Nome do Provedor de Segurança Auth0 Cada App Builder o provedor de segurança recebe um nome lógico. Este nome é usado no URL do Assertion Consumer Service (ACS).
URL do Serviço de Asserção ao Consumidor https://example.com/App Builder/signin-Auth0 App Builder provisiona automaticamente uma URL do Assertion Consumer Service (ACS) para provedores de segurança SAML Single Sign-On (SSO). Auth0 se refere à URL do ACS como " URL de retorno de chamada". Observe que o Nome do Provedor de Segurança Auth0 aparece na URL do ACS.

Registrar App Builder como um Cliente Auth0

Para registrar App Builder como um cliente Auth0, comece entrando no painel Auth0 como um Administrador do Painel.

  1. Selecione o link do menu Clientes.

    Clientes

  2. Clique no botão Criar cliente.

    Criar cliente

  3. Forneça o Nome do cliente.

  4. Para o Tipo de cliente, escolha Aplicativos da Web regulares.
  5. Clique no botão Criar.
  6. Clique na aba Addons.
  7. Selecione a opção SAML2 Web App.

    Aplicativo web SAML 2

  8. Para o URL de retorno de chamada do aplicativo, forneça o URL do serviço de consumidor de asserção.

    Example: https://example.com/App Builder/signin-Auth0

  9. Clique na aba Uso.

  10. Observe a URL de metadados do provedor de identidade, ou seja, clique com o botão direito do mouse no link Download e escolha Copiar endereço do link.

    https://example.auth0.com/samlp/metadata/aBcDeFgHiJkLmNoPqRsTuVwXyZ

  11. Clique no botão Salvar.

    Observe que o logon único (SSO) não é habilitado por padrão. Se você precisar de logon único:

  12. Clique na aba Configurações.

  13. Habilite a opção Usar Auth0 em vez do IdP para fazer logon único.

    Então

  14. Clique no botão Salvar.

Configurar Auth0 Como an App Builder provedor de Segurança

Para configurar o Auth0 como an App Builder provedor de segurança, comece fazendo login App Builder como administrador.

  1. Navegue até o IDE
  2. Selecione o botão Provedores de segurança
  3. No painel Autenticação da fonte de dados, clique no botão + Autenticação da fonte de dados
  4. Forneça o seguinte:

    • Nome: {Nome do Provedor de Segurança}

      Exemplo: Auth0

    • Tipo: SAML

    • Prioridade: Um inteiro exclusivo entre 10 e 100. Observe que esse valor deve ser único.

      Exemplo: 50

    • Habilitado: Verificar

    • Provisionamento de usuário: marque para habilitar o provisionamento de usuário just-in-time
    • Suprimentos de associação ao grupo: Verifique se o Auth0 foi configurado para passar a associação ao grupo de usuários.
    • Redirecionamento em caso de desafio: se estiver habilitado, o cliente da web ignorará o formulário de login, redirecionando o usuário para o provedor OAuth
    • Mostrar no formulário de login: Verificar
  5. Clique no botão Salvar

  6. No painel Propriedades, clique no botão + Propriedade
  7. Na lista de seleção de parâmetros, selecione MetadataEndpoint
  8. Para o Valor, forneça o link {Metadados do Provedor de Identidade} (veja acima).

    Example: https://example.auth0.com/samlp/metadata/aBcDeFgHiJkLmNoPqRsTuVwXyZ

  9. Clique no ícone Salvar (Verificar)

Mapa App Builder usuários para Identidades Auth0

Com Provisionamento de Usuário

Se você habilitou o provisionamento de usuários conforme descrito acima e tentar fazer login, você poderá ser redirecionado de volta para o App Builder formulário de login com a seguinte mensagem:

A conta do usuário (arthur.dent@example.com) não recebeu acesso a um aplicativo.

Embora App Builder conseguiu provisionar o usuário com sucesso, o usuário não tem acesso a nenhum App Builder aplicativos por padrão. Supondo que o usuário Auth0 tenha sido adicionado a um ou mais grupos e que a Associação ao Grupo de Suprimentos esteja habilitada (conforme descrito acima), você precisará mapear os grupos de segurança Auth0 para App Builder grupos de segurança.

Para mapear grupos de segurança Auth0 para App Builder grupos de segurança, comece fazendo login em App Builder como administrador.

  1. Navegue até o IDE
  2. Selecione o botão Gerenciamento de usuários
  3. Clique na aba Identidades
  4. No painel Provedores, localize e selecione o provedor de segurança Auth0
  5. No painel Provider Groups, localize um grupo Auth0 que você gostaria de mapear e clique no ícone Edit (Lápis). Se ele não aparecer, clique em + Group e configure um registro adequadamente.
  6. Selecione o App Builder security Grupo para o qual o grupo Auth0 será mapeado
  7. Clique no botão Salvar

Consulte a seção sobre mapeamento de identidade e grupo para obter mais informações.

Sem Provisionamento de Usuário

Se você não habilitou o provisionamento de usuário, a autenticação terá falhado com uma mensagem semelhante à seguinte:

Embora você tenha autenticado com sucesso com Auth0, a conta arthur.dent@example.com(auth0|aBcDeFgHiJkLmNoPqRsTuVwZyZ) não está associado a uma conta local.

Na mensagem acima, arthur.dent@example.comé o nome do usuário (chamado de "nome" na autenticação de claims). A parte entre parênteses é o identificador exclusivo (chamado de "identificador de nome" na autenticação de claims). Você precisará dessas duas informações para a próxima etapa.

Para mapear an App Builder conta de usuário para uma identidade Auth0, comece fazendo login App Builder como administrador:

  1. Navegue até o IDE
  2. Selecione o botão Gerenciamento de usuários
  3. Selecione Usuários no menu
  4. No painel Usuários, localize e selecione o usuário que você gostaria de mapear
  5. No painel Identidades, clique no botão + Identidade
  6. Forneça o seguinte:

    • Provedor: Auth0 (ou o nome escolhido na seção anterior)
    • Nome: O nome de usuário Auth0 (veja acima)
    • Identificador: O identificador de nome Auth0 (veja acima)
  7. Clique no ícone Salvar (Verificar)

Solução de Problemas

O usuário é redirecionado de volta para a página de login após efetuar login.

  1. Se Provisionamento foi habilitado, então o usuário pode ter sido criado, mas não atribuído a nenhum grupo ou os grupos aos quais o usuário foi atribuído não receberam acesso a nenhum App Builder aplicativos. O único grupo atribuído a novos usuários por padrão (ou seja, tem a opção Conceder na criação de usuário habilitada) é o grupo Usuários. Este grupo não tem acesso concedido a nenhum aplicativo por padrão.

    • Se a opção Associação ao grupo de suprimentos tiver sido habilitada, App Builder terá registrado todos os grupos Auth0 passados por meio de uma asserção SAML. Entre como administrador e mapeie os grupos Auth0 para App Builder grupos de segurança.
    • Se a opção Supplies Group Membership não tiver sido habilitada, o provedor de segurança Auth0 não terá nenhum grupo. Entre como administrador e defina um ou mais grupos de provedores Auth0 com a opção Grant On Identity Create habilitada e mapeie os grupos de provedores para App Builder grupos de segurança.
  2. Se o provedor de segurança Exigir HTTPS não tiver sido habilitado, o usuário poderá iniciar o processo SAML SSO de uma URL não segura (por exemplo, http://example.com/). No entanto, o Auth0 pode retornar o usuário ao URL seguro do Assertion Consumer Service (ACS) (https://example.com/signin-Auth0). App Builder autentica o usuário no contexto da URL segura antes de retornar o usuário para a URL não segura. Na verdade, o usuário tem duas sessões separadas. Para resolver esse problema, habilite o provedor de segurança Require HTTPS.