Pular para o conteúdo principal

Configurar o XFA como provedor de identidade de um provedor de serviços SAML Beta

Aqui o XFA é o provedor de identidade: o provedor de serviços passa o início de sessão ao XFA, que inicia a sessão dos utilizadores com uma passkey e verifica o respetivo dispositivo. Para o Google Workspace, siga antes o guia do Google Workspace.

_Nota: este guia pressupõe que a sua organização tem uma conta XFA, que é administrador dessa organização no XFA e que pode configurar o single sign-on no provedor de serviços. Se ainda não tem uma conta XFA, pode criar uma em

https://dashboard.xfa.tech/signup._

Criar uma ligação SAML no painel XFA

Depois de iniciar sessão no painel XFA, abra Fornecedor de identidade na barra lateral, clique em Adicionar ligação e escolha App SAML. O XFA cria a ligação e abre a configuração guiada: Informações básicas e, depois, quatro passos que percorre entre o XFA e o provedor de serviços, por qualquer ordem.

Em Informações básicas, defina:

  • um Nome para a ligação e a política cujas verificações de dispositivo se aplicam durante o início de sessão;
  • Domínios de e-mail permitidos: o domínio ou domínios das pessoas que vão iniciar sessão (por exemplo example.com). O XFA só inicia a sessão de pessoas com um endereço de e-mail destes domínios ou dos domínios de e-mail da sua organização (em Definições). Sem domínios aqui nem nos domínios de e-mail da sua organização, ninguém consegue iniciar sessão.

O passo 1, Adicionar a XFA como fornecedor de identidade, mostra os valores de que o provedor de serviços precisa para confiar no XFA: o URL de metadados do IdP, o Entity ID, o URL de SSO e um Certificado que pode transferir. Introduza-os nas definições de single sign-on do provedor de serviços; a maioria dos provedores de serviços consegue importar o URL de metadados do IdP de uma só vez.

Cada pessoa inicia sessão com uma passkey num dispositivo registado no XFA. Prepare-as antes de ativar o single sign-on, como descrito em Preparar os utilizadores para o primeiro dispositivo.

Introduzir os dados do provedor de serviços

No passo 2, Colar os dados do fornecedor de serviços, o XFA precisa de saber que provedor de serviços envia os pedidos de início de sessão e para onde enviar a resposta SAML assinada:

  • ID de entidade do provedor de serviços: o ID de entidade do provedor de serviços (por vezes chamado Issuer ou Audience).
  • URL do Assertion Consumer Service (ACS): para onde o XFA envia a resposta SAML.
  • Certificado de assinatura do provedor de serviços: apenas se o provedor de serviços assinar os seus pedidos (consulte Pedidos assinados). Caso contrário, deixe-o vazio.

O XFA assina sempre as suas asserções SAML, por isso uma definição do provedor de serviços como "sign the response and assertion" não precisa de equivalente no XFA. O XFA envia o endereço de e-mail como NameID.

Importar a partir do URL de metadados

Se o provedor de serviços publicar os seus metadados SAML num URL, não tem de copiar os valores um a um:

  1. No passo 2, cole o URL de metadados do provedor de serviços (começa por https://) em Importar a partir do URL de metadados e clique em Importar.
  2. O XFA obtém os metadados e preenche ID de entidade do provedor de serviços e URL do Assertion Consumer Service (ACS). Se os metadados indicarem que o provedor de serviços assina os seus pedidos de início de sessão, o XFA também preenche Certificado de assinatura do provedor de serviços.
  3. Verifique os valores e clique em Concluir a configuração (ou Salvar e continuar depois).

Se a importação falhar, abra o URL de metadados num navegador: deve devolver o XML de metadados SAML do provedor de serviços. Pode sempre colar os valores manualmente.

No passo 3, ative o single sign-on no provedor de serviços para os utilizadores ou grupos que o XFA deve verificar; comece com um grupo pequeno. O passo 4 é um início de sessão de teste opcional.

Pedidos assinados

Alguns provedores de serviços assinam cada pedido de início de sessão que enviam ao XFA; a maioria não. Com um Certificado de assinatura do provedor de serviços guardado, o XFA só aceita pedidos assinados com esse certificado, e Exigir pedidos assinados está ativado em Configurações na página da ligação. Sem certificado, o XFA aceita pedidos não assinados, e o utilizador continua a provar a sua identidade com a sua passkey.

Quando o provedor de serviços renova o certificado de assinatura

Os provedores de serviços que assinam os seus pedidos renovam o certificado de assinatura de tempos a tempos e publicam o novo nos seus metadados. O XFA ainda não volta a obter os metadados por si só. Após uma renovação, o início de sessão falha com o motivo invalid_signature até abrir Alterar conexão, clicar novamente em Importar no passo 2 (ou colar o novo certificado) e guardar a ligação.

Resolução de problemas

Quando o XFA rejeita um pedido de início de sessão do provedor de serviços, a página de erro mostra uma linha Reason: seguida de um código. A mesma lista, com um botão que o leva ao campo a corrigir, está em Se a página de erro mostrar um destes motivos no passo 4 da configuração.

MotivoO que fazer
missing_sp_entity_idPreencha ID de entidade do provedor de serviços no passo 2, ou importe os metadados.
issuer_mismatchO pedido vem de outro ID de entidade. Copie exatamente o ID de entidade do provedor de serviços para ID de entidade do provedor de serviços no passo 2.
missing_signatureO provedor de serviços enviou um pedido não assinado. Ative a assinatura de pedidos no provedor de serviços, ou desative Exigir pedidos assinados em Configurações.
invalid_signatureA assinatura não corresponde ao certificado, normalmente após uma renovação. Importe novamente os metadados no passo 2 e guarde.
unsupported_sigalgO XFA aceita assinaturas RSA-SHA256 e RSA-SHA1. Configure o provedor de serviços para assinar com RSA-SHA256.
invalid_sp_certificateO XFA não consegue ler o certificado guardado. Cole o certificado completo, incluindo as linhas BEGIN e END, ou importe os metadados.
malformed_requestO pedido não indica nenhum issuer. Verifique se o provedor de serviços envia o seu entity ID como Issuer nos pedidos SAML, e contacte o suporte XFA se persistir.