Ir para o conteúdo

Configurando o Auth0 no Jitterbit App Builder

Auth0 é um Provedor de Identidade (IdP) que suporta vários protocolos de autenticação, incluindo autenticação SAML Single Sign-On (SSO). O App Builder se integra ao Auth0 como um Provedor de Serviço (SP). Cada instância do App Builder deve ser integrada individualmente ao Auth0 e vice-versa. Existem três tarefas principais envolvidas:

  1. Registrar o App Builder como um cliente Auth0.
  2. Configurar o Auth0 como um Provedor de Segurança do App Builder.
  3. Mapear usuários do App Builder para identidades do Auth0.

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

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

Exemplo Notas
URL do App Builder https://example.com/Vinyl/ A URL a partir da qual o App Builder é hospedado. Inclui a barra final.
Nome do Provedor de Segurança Auth0 Cada provedor de segurança do App Builder recebe um nome lógico. Este nome é usado na URL do Serviço de Consumidor de Aserção (ACS).
URL do Serviço de Consumidor de Aserção https://example.com/Vinyl/signin-Auth0 O App Builder provisiona automaticamente uma URL de Serviço de Consumidor de Aserção (ACS) para provedores de segurança SAML Single Sign-On (SSO). O Auth0 se refere à URL ACS como a "URL de Retorno". Observe que o Nome do Provedor de Segurança Auth0 aparece na URL ACS.

Registrar o App Builder como um cliente Auth0

Para registrar o App Builder como um cliente Auth0, comece fazendo login no painel do 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 Aplicações Web Regulares.
  5. Clique no botão Criar.
  6. Clique na aba Addons.
  7. Selecione a opção Aplicativo Web SAML2.

    Aplicativo Web SAML 2

  8. Para a URL de Callback da Aplicação, forneça a URL do Serviço de Consumidor de Aserção.

    Exemplo: https://example.com/Vinyl/signin-Auth0

  9. Clique na aba Uso.

  10. Anote a URL de Metadados do Provedor de Identidade – ou seja, clique com o botão direito no link de Download e escolha Copiar endereço do link.

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

  11. Clique no botão Salvar.

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

  12. Clique na aba Configurações.

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

    Sso

  14. Clique no botão Salvar.

Configurar o Auth0 como um provedor de segurança do App Builder

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

  1. Navegue até o IDE
  2. Selecione o botão Provedores de Segurança
  3. No painel Autenticação de Fonte de Dados, clique no botão + Autenticação de Fonte de Dados
  4. Forneça o seguinte:

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

      Exemplo: Auth0

    • Tipo: SAML

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

      Exemplo: 50

    • Habilitado: Marcar

    • Provisionamento de Usuário: Marcar para habilitar o provisionamento de usuário sob demanda
    • Fornece Membro de Grupo: Verifique se o Auth0 foi configurado para passar a associação de grupo do usuário.
    • Redirecionar em Desafio: Se isso estiver habilitado, o cliente web ignorará o formulário de login, redirecionando o usuário para o provedor OAuth
    • Mostrar no Formulário de Login: Marcar
  5. Clique no botão Salvar

  6. No painel Propriedades, clique no botão + Propriedade
  7. Na lista de seleção de Parâmetro, selecione MetadataEndpoint
  8. Para o Valor, forneça o link {Identity Provider Metadata} (veja acima).

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

  9. Clique no ícone Salvar (Marcar)

Mapear usuários do App Builder para identidades do Auth0

Com provisionamento de usuário

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

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

Embora o App Builder tenha conseguido provisionar o usuário com sucesso, o usuário não tem acesso a nenhum aplicativo do App Builder por padrão. Supondo que o usuário do Auth0 tenha sido adicionado a um ou mais grupos e que Fornece Membro de Grupo esteja habilitado (conforme descrito acima), você precisará mapear os grupos de segurança do Auth0 para os grupos de segurança do App Builder.

Para mapear grupos de segurança do Auth0 para grupos de segurança do App Builder, comece fazendo login no 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 Grupos do Provedor, localize um grupo Auth0 que você gostaria de mapear e clique no ícone Editar (Lápis). Se não aparecer, clique em + Grupo e configure um registro de acordo.
  6. Selecione o Grupo de segurança do App Builder ao qual o grupo Auth0 será mapeado
  7. Clique no botão Salvar

Por favor, veja a seção sobre Mapeamento de Identidade e Grupo para mais informações.

Sem provisionamento de usuário

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

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

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

Para mapear uma conta de usuário do App Builder a uma identidade do Auth0, comece fazendo login no 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 do usuário do Auth0 (veja acima)
    • Identificador: O identificador de nome do Auth0 (veja acima)
  7. Clique no ícone Salvar (Verifique)

Solução de Problemas

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

  1. Se o Provisionamento foi ativado, 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 foram concedidos acesso a nenhum aplicativo do App Builder. O único grupo atribuído a novos usuários por padrão (ou seja, que tem a opção Conceder na Criação do Usuário ativada) é o grupo de Usuários. Este grupo não tem acesso a nenhum aplicativo por padrão.

    • Se a opção Fornece Membro de Grupo foi ativada, o App Builder terá registrado quaisquer grupos do Auth0 passados via uma asserção SAML. Faça login como administrador e mapeie os grupos do Auth0 para grupos de segurança do App Builder.
    • Se a opção Fornece Membro de Grupo não foi ativada, o provedor de segurança do Auth0 não terá grupos. Faça login como administrador e defina um ou mais grupos de provedor do Auth0 com a opção Conceder na Criação da Identidade ativada e mapeie os grupos do provedor para grupos de segurança do App Builder.
  2. Se o provedor de segurança Requerer HTTPS não estiver habilitado, o usuário pode iniciar o processo SSO SAML a partir de uma URL não segura (por exemplo, http://example.com/). No entanto, o Auth0 pode retornar o usuário para a URL segura do Serviço de Consumidor de Assertivas (ACS) (https://example.com/signin-Auth0). O App Builder autentica o usuário no contexto da URL segura antes de retornar o usuário para a URL não segura. Na prática, o usuário tem duas sessões separadas. Para resolver esse problema, habilite o provedor de segurança Requerer HTTPS.