Tutorial: configurar o Gerenciador de Política de Acesso do BIG-IP da F5 para SSO baseado em cabeçalho

Saiba como implementar o acesso híbrido seguro (SHA) com o logon único (SSO) em aplicativos baseados em cabeçalho usando a configuração avançada do BIG-IP da F5. Aplicativos publicados no BIG-IP e benefícios de configuração do Microsoft Entra:

Saiba mais:

Descrição do cenário

Para este cenário, temos um aplicativo herdado usando cabeçalhos de autorização HTTP para controlar o acesso ao conteúdo protegido. Idealmente, o Microsoft Entra ID gerencia o acesso aos aplicativos, porém o herdado carece de um protocolo de autenticação moderno. A modernização exige esforço e tempo, além de introduzir custos e riscos de tempo de inatividade. Em vez disso, um BIG-IP implantado entre a Internet pública e o aplicativo interno será usado para controlar o acesso de entrada ao aplicativo.

Um BIG-IP na frente do aplicativo permite a sobreposição do serviço com a pré-autenticação do Microsoft Entra e SSO baseado em cabeçalho. A configuração melhora a postura de segurança do aplicativo.

Arquitetura de cenário

A solução de acesso híbrido seguro para esse cenário é composta do:

  • Aplicativo – serviço publicado do BIG-IP a ser protegido pelo Microsoft Entra SHA
  • Microsoft Entra ID – provedor de identidade (IdP) Security Assertion Markup Language (SAML), que verifica as credenciais do usuário, o acesso condicional e o SSO baseado em SAML para o BIG-IP
    • Por meio do SSO, o Azure AD fornece ao BIG-IP todos os atributos de sessão necessários, incluindo identificadores de usuário
  • BIG-IP – proxy reverso e provedor de serviços (SP) SAML para o aplicativo, delegando autenticação ao IdP de SAML antes de executar o SSO baseado em cabeçalho para o aplicativo de back-end

O diagrama a seguir ilustra o fluxo do usuário com Azure AD, BIG-IP, APM e um aplicativo.

Diagram of the user flow with Microsoft Entra ID, BIG-IP, APM and an application

  1. O usuário se conecta ao ponto de extremidade do SP do SAML do aplicativo (BIG-IP).
  2. A política de acesso do APM do BIG-IP redireciona o usuário para o Microsoft Entra ID (IdP do SAML).
  3. O Microsoft Entra autentica o usuário previamente e aplica as políticas ConditionalAccess.
  4. O usuário é redirecionado para o BIG-IP (SP do SAML) e o SSO ocorre usando o token SAML emitido.
  5. O BIG-IP injeta os atributos do Microsoft Entra como cabeçalhos na solicitação ao aplicativo.
  6. O aplicativo autoriza a solicitação e retorna o conteúdo.

Pré-requisitos

Para o cenário você precisa:

Método de configuração do BIG-IP

As instruções a seguir são um método de configuração avançado, uma maneira flexível de implementar o SHA. Crie manualmente os objetos de configuração do BIG-IP. Use esse método para cenários não incluídos nos modelos de Configuração Guiada.

Observação

Substitua cadeias de caracteres ou valores de exemplo por aqueles do seu ambiente.

Dica

As etapas neste artigo podem variar ligeiramente com base no portal do qual você começa.

Para implementar o SHA, a primeira etapa é configurar uma relação de confiança de federação SAML entre o APM do BIG-IP e o Azure AD. A relação de confiança estabelece a integração necessária para que o BIG-IP entregue a pré-autenticação e o Acesso Condicional ao Azure AD, antes de permitir acesso ao serviço publicado.

Saiba mais sobre: o que é acesso condicional?

  1. Entre no Centro de administração do Microsoft Entra como pelo menos Administrador de Aplicativo de nuvem.

  2. Navegue até Identidade>Aplicativos>Aplicativos Empresariais>Todos os aplicativos.

  3. Na faixa de opções superior, selecione + Novo aplicativo.

  4. Na galeria, pesquise F5.

  5. Selecione Integração entre o APM do BIG-IP do F5 e o Azure AD.

  6. Insira um Nome de aplicativo.

  7. Selecione Adicionar/Criar.

  8. O nome reflete o serviço.

Configurar o SSO do Microsoft Entra

  1. As novas propriedades do aplicativo F5 são exibidas

  2. Selecione Gerenciar>Logon único

  3. Na página Selecionar um método de logon único, escolha SAML.

  4. Ignore o prompt para salvar as configurações de logon único.

  5. Selecione Não. Salvarei mais tarde.

  6. Em Configurar logon único com o SAML para Configuração Básica do SAML, selecione o ícone de caneta.

  7. Substitua a URL do Identificador pela URL do serviço publicado do BIG-IP. Por exemplo, https://mytravel.contoso.com

  8. Repita para URL de Resposta e inclua o caminho do ponto de extremidade SAML do APM. Por exemplo, https://mytravel.contoso.com/saml/sp/profile/post/acs

    Observação

    Nessa configuração, o fluxo SAML opera no modo IdP: o Azure AD emite ao usuário uma declaração SAML antes de ser redirecionado ao ponto de extremidade de serviço do BIG-IP para o aplicativo. O APM do BiG-IP dá suporte aos modos IdP e SP.

  9. Para a URI de logoff, insira o ponto de extremidade de Logoff único (SLO) do APM do BIG-IP anexado pelo cabeçalho do host de serviço. A URI do SLO garante que as sessões do APM do BIG-IP do usuário terminem depois que Microsoft Entra sair. Por exemplo,https://mytravel.contoso.com/saml/sp/profile/redirect/slr

    Screenshot of Basic SAML Configuration input for Identifier, Reply URL, Sign on URL, etc.

    Observação

    A partir da v16 do TMOS (Traffic Management Operating System), o ponto de extremidade de SLO de SAML alterou para /saml/sp/profile/redirect/slo.

  10. Clique em Salvar.

  11. Saia da configuração do SAML.

  12. Ignore o prompt de teste de SSO.

  13. Para editar Atributos e Declarações do Usuário > + Adicionar nova declaração, selecione o ícone de caneta.

  14. Em Nome, selecione Employeeid.

  15. Para Atributo de Origem, insira user.employeeid.

  16. Selecione Salvar

Screenshot of input for Name and Source attribute, in the Manage claim dialog.

  1. Selecione + Adicionar uma declaração de grupo
  2. Selecione Grupos atribuídos ao aplicativo> Atributo de Origem>sAMAccountName.

Screenshot of input for Source attribute, in the Group Claims dialog.

  1. Selecione Salvar a configuração.
  2. Feche a exibição.
  3. Observe as propriedades da seção Atributos e Declarações do Usuário. O Microsoft Entra ID emite propriedades aos usuários para a autenticação de APM do BIG-IP e SSO para o aplicativo de back-end.

Screenshot of User Attributes and Claims information such as surname, email address, identity, etc.

Observação

Adicione outras declarações que o aplicativo publicado do BIG-IP espera como cabeçalhos. Declarações mais definidas serão emitidas se estiverem no Azure AD. Defina associações de diretório e objetos de usuário no Azure AD antes que as declarações possam ser emitidas. Confira Configurar declarações de grupo para aplicativos usando o Azure AD.

  1. Na seção Certificado de Autenticação SAML, selecione Download.
  2. O arquivo XML de Metadados de Federação é salvo em seu computador.

Screenshot of the Download link for Federation Metadata XML on the SAML Signing Certificate dialog.

Os certificados de autenticação SAML criados pelo Microsoft Entra ID têm um ciclo de vida de três anos.

Autorização do Microsoft Entra

Por padrão, o Microsoft Entra ID emite tokens aos usuários com acesso concedido em um serviço.

  1. Na exibição de configuração do aplicativo, selecione Usuários e grupos.
  2. Selecione + Adicionar usuário e em Adicionar Atribuição, selecione Usuários e grupos.
  3. Na caixa de diálogo Usuários e grupos, adicione os grupos de usuários autorizados a acessar o aplicativo baseado em cabeçalho.
  4. Selecione Selecionar.
  5. Selecione Atribuir.

A relação de confiança de federação SAML do Microsoft Entra está concluída. Em seguida, configure o APM do BIG-IP para publicar o aplicativo Web, configurado com propriedades para concluir a relação de confiança de pré-autenticação do SAML.

Configuração avançada

Use as seções a seguir para configurar SAML, SSO de cabeçalho, perfil de acesso e muito mais.

Configuração do SAML

Crie o provedor de serviços SAML do BIG-IP e os objetos IdP do SAML correspondentes para concluir a federação do aplicativo publicado, com o Azure AD.

  1. Selecione Acessar>Federação>Provedor de serviços SAML>Serviços do SP local>Criar.

    Screenshot the Create option under the SAML Service Provider tab.

  2. Insira um Nome.

  3. Insira a ID da entidade definida no Microsoft Entra ID.

    Screenshot of Name and Entity ID input on the Create New SAML SP Service dialog.

  4. Para Configurações de Nome SP, faça seleções se a ID da Entidade não corresponder ao nome do host da URL publicada ou faça seleções se não estiver no formato de URL regular baseado em nome de host. Forneça o esquema externo e o nome do host do aplicativo se a ID de entidade for urn:mytravel:contosoonline.

  5. Role a página para baixo para selecionar o novo objeto de SP do SAML.

  6. Selecione Associar/Desassociar Conectores de IdP.

    Screenshot of the Bind Unbind IdP Connectors option under the SAML Services Provider tab.

  7. Selecione Criar Novo Conector IdP.

  8. No menu suspenso, selecione De Metadados.

    Screenshot of the From Metadata option in the Create New IdP Connection drop-down menu.

  9. Procure o arquivo XML de metadados de federação que você baixou.

  10. Insira um Nome do Provedor de Identidade para o objeto APM que representa o IdP do SAML externo. Por exemplo, MyTravel_AzureAD

Screenshot of Select File and Identity Provider Name input under Create New SAML IdP Connector.

  1. Selecione Adicionar nova linha.
  2. Selecione o novo Conector IdP do SAML.
  3. Selecione Atualizar.

Screenshot of the Update option under SAML IdP Connectors.

  1. Selecione OK.

Screenshot of saved settings

Configuração de SSO de cabeçalho

Crie um objeto de SSO do APM.

  1. Selecione Acessar>Perfis/Políticas>Políticas por Solicitação>Criar.

  2. Insira um Nome.

  3. Adicione pelo menos uma Linguagem Aceita.

  4. Selecione Concluído.

    Screenshot of Name and Accepted Language input.

  5. Para a nova política por solicitação, selecione Editar.

    Screenshot of the Edit option in the Per Request Policy column.

  6. O editor de política visual inicia.

  7. Em fallback, selecione o símbolo +.

    Screenshot of the plus option under fallback.

  8. Na guia Uso Geral, selecione Cabeçalhos HTTP>Adicionar Item.

    Screenshot of the HTTP Headers option.

  9. Selecione Adicionar nova entrada.

  10. Crie três entradas de modificação de cabeçalho e HTTP.

  11. Para Nome do Cabeçalho, insira UPN.

  12. Para Valor do Cabeçalho, insira %{session.saml.last.identity}.

  13. Para Nome do Cabeçalho, insira employeeid.

  14. Para Valor do Cabeçalho, insira %{session.saml.last.attr.name.employeeid}.

  15. Para Nome do Cabeçalho, insira group_authz.

  16. Para Valor do Cabeçalho, insira %{session.saml.last.attr.name.http://schemas.microsoft.com/ws/2008/06/identity/claims/groups}.

Observação

As variáveis de sessão do APM entre colchetes diferenciam maiúsculas de minúsculas. Recomendamos que você defina atributos em letras minúsculas.

Screenshot of header input, under HTTP Header Modify, on the Properties tab.

  1. Selecione Salvar.
  2. Feche o editor de política visual.

Screenshot of the visual policy editor.

Configuração do perfil de acesso

Perfis de acesso associam muitos elementos do APM gerenciando o acesso a servidores virtuais do BIG-IP, incluindo políticas de acesso, configuração de SSO e configurações de interface do usuário.

  1. Selecione Acessar>Perfis/Políticas>Perfis de Acesso (Políticas por Sessão)>Criar.

  2. Em Nome, insira MyTravel.

  3. Em Tipo de Perfil: selecione Todos.

  4. Para Idioma Aceito, selecione pelo menos um idioma.

  5. Selecione Concluído.

    Screenshot of entries for Name, Profile Type, and Accepted Language.

  6. Para o perfil por sessão que você criou, selecione Editar.

    Screenshot of the Edit option in the Per-Session Policy column.

  7. O editor de política visual inicia.

  8. Em fallback, selecione o símbolo +.

    Screenshot of the plus option.

  9. Selecione Autenticação>Autenticação SAML>Adicionar Item.

    Screenshot of the SAML Auth option on the Authentication tab.

  10. Na configuração SP de autenticação SAML, do menu suspenso Servidor AAA selecione o objeto do SP do SAML que você criou.

  11. Selecione Salvar.

Screenshot of the AAA Server selection.

Mapeamento de atributos

As instruções a seguir são opcionais. Com uma configuração LogonID_Mapping, a lista de sessões ativas do BIG-IP tem o UPN do usuário conectado, não um número de sessão. Use esses dados ao analisar logs ou para solucionar problemas.

  1. Na ramificação da Autenticação SAML Bem-sucedida, selecione o símbolo +.

    Screenshot of the plus symbol on the SAML Auth Successful branch.

  2. Na janela pop-up, selecione Atribuição>Atribuir Variável>Adicionar Item.

    Screenshot of the Variable Assign option, on the Assignment tab.

  3. Insira um Nome

  4. No painel Atribuir Variável, selecione Adicionar nova entrada>Alterar. Por exemplo, LogonID_Mapping.

    Screenshot of the Add new entry and change options

  5. Para Variável Personalizada, defina session.saml.last.identity.

  6. Para Variável de Sessão, defina session.logon.last.username.

  7. Selecione Concluído.

  8. SelecioneSalvar.

  9. Na ramificação de Política de Acesso Bem-sucedida, selecione o terminal Negar.

  10. selecione Permitir.

  11. Clique em Salvar.

  12. Selecione Aplicar Política de Acesso.

  13. Feche o editor de política visual.

Configuração de pool de back-end

Para habilitar o BIG-IP para encaminhar o tráfego do cliente de forma correta, crie um objeto de nó do APM que representa o servidor de back-end que hospeda o aplicativo. Coloque o nó em um pool do APM.

  1. Selecione Tráfego Local > Pools > Lista de Pool > Criar.

  2. Insira um Nome para um objeto de pool de servidores. Por exemplo, MyApps_VMs.

    Screenshot of the Apply Access Policy.

  3. Adicione um objeto de membro do pool.

  4. Para Nome do Nó, insira um nome para o servidor que hospeda o aplicativo Web de back-end.

  5. Para Endereço, insira o endereço IP do servidor que hospeda o aplicativo.

  6. Para Porta de serviço: insira a porta HTTP/S por onde o aplicativo está escutando.

  7. Selecione Adicionar.

    Screenshot of input for Node Name, Address, Service Port, and the Add option.

Configuração do servidor virtual

Servidor virtual é um objeto de plano de dados BIG-IP representado por um endereço IP virtual que escuta solicitações de clientes para o aplicativo. Qualquer tráfego recebido é processado e avaliado em relação ao perfil de acesso do APM associado ao servidor virtual. O tráfego é direcionado de acordo com a política.

  1. Selecione Tráfego Local>Servidores Virtuais>Lista de Servidores Virtuais>Criar.

  2. Insira um Nome do servidor virtual.

  3. Para Endereço de Destino/Máscara, selecione Host

  4. Insira um IP IPv4 ou IPv6 não utilizado a ser atribuído ao BIG-IP para receber o tráfego do cliente.

  5. Para Porta de Serviço, selecione Porta, 443 e HTTPS.

    Screenshot of entries for Name, Destination Address Mask, and Service Port.

  6. Para Perfil HTTP (Cliente), selecione http.

  7. Para Perfil de SSL (Cliente), selecione o perfil de SSL cliente que você criou ou mantenha o padrão no teste.

    Screenshot of entries for HTTP Profile Client and SSL Profile Client.

  8. Em Tradução de Endereço de Origem, selecione Mapeamento Automático.

    Screenshot of the Source Address Translation option.

  9. Para Política de Acesso, selecione o Perfil de Acesso criado anteriormente. Essa ação vincula o perfil de pré-autenticação SAML do Microsoft Entra e a política de SSO de cabeçalhos ao servidor virtual.

  10. Para Política por Solicitação, selecione SSO_Headers.

Screenshot of entries for Access Profile and Pre-Request Policy.

  1. Para Pool Padrão, selecione os objetos de pool de back-end que você criou.
  2. Selecione Concluído.

Screenshot of the Default Pool option under Resources.

Gerenciamento da sessão

Use as configurações de gerenciamento de sessão do BIG-IP para definir as condições de encerramento ou continuação das sessões de usuário. Crie uma política comPolítica de Acesso>Perfis de Acesso. Selecione um aplicativo na lista.

Com relação à funcionalidade de SLO, a definição de uma só URI de SLO no Microsoft Entra ID garante que uma saída iniciada pelo IdP do portal MyApps termine a sessão entre o cliente e o APM do BIG-IP. O arquivo XML de metadados de federação do aplicativo importado fornece ao APM o ponto de extremidade de saída SAML do Microsoft Entra para a saída iniciada por SP. Portanto, habilite o APM para saber quando um usuário sai.

Se você não usar o portal Web do BIG-IP, o usuário não poderá instruir o APM a sair. Se o usuário sair do aplicativo, o BIG-IP estará alheio à ação. A sessão do aplicativo pode ser restabelecida por meio do SSO. Portanto, a saída iniciada por SP precisa de uma consideração cuidadosa.

Para garantir que as sessões terminem com segurança, adicione uma função SLO ao botão Sair do aplicativo. Habilite-a para redirecionar o cliente para o ponto de extremidade de saída do SAML do Microsoft Entra. Para encontrar o ponto de extremidade de saída do SAML do seu locatário, acesse Registros de aplicativo>Pontos de extremidade.

Se não for possível alterar o aplicativo, ative o BIG-IP para ouvir a chamada de saída do aplicativo e acionar o SLO. Para saber mais:

Implantar

  1. Para confirmar as configurações, selecione Implantar.
  2. Verifique se o aplicativo aparece em seu locatário.
  3. O aplicativo é publicado e acessível via SHA, em sua URL ou nos portais da Microsoft.

Teste

  1. Como usuário, selecione a URL externa do aplicativo ou, no portal MyApps, selecione o ícone do aplicativo.

  2. Autentique-se no Microsoft Entra ID.

  3. Você será redirecionado para o servidor virtual do BIG-IP para o aplicativo e conectado por meio do SSO.

  4. A saída do cabeçalho injetado é exibida pelo aplicativo baseado em cabeçalho.

    Screenshot of Server Variables, such as UPN, Employee ID, and Group Authorization.

Para aumentar a segurança, bloqueie o acesso direto ao aplicativo, impondo um caminho através do BIG-IP.

Solução de problemas

Use as diretrizes a seguir para solucionar problemas.

Detalhamento do log

Os logs do BIG-IP têm informações para ajudar a isolar problemas de autenticação e de SSO. Para aumentar o nível de detalhamento do log:

  1. Acesse Política de Acesso>Visão Geral>Logs de Eventos.
  2. Selecione Configurações.
  3. Selecione a linha do aplicativo publicado.
  4. Selecione Editar>Logs do Sistema de Acesso.
  5. Na lista de SSO, selecione Depurar.
  6. Selecione OK.
  7. Reproduza o problema.
  8. Analise os logs.
  9. Quando terminar, reverta as configurações.

Mensagem de erro do BIG-IP

Se um erro de BIG-IP for exibido após o redirecionamento, talvez o problema esteja relacionado ao SSO do Azure AD para BIG-IP.

  1. Navegue até Política de Acesso > Visão Geral.
  2. Selecione Acessar relatórios.
  3. Execute o relatório da última hora.
  4. Analise os logs em busca de pistas.
  5. Para sua sessão, selecione o link Exibir variáveis de sessão.
  6. Verifique se o APM recebe as declarações esperadas do Azure AD.

Nenhuma mensagem de erro do BIG-IP

Se uma mensagem de erro do BIG-IP não aparecer, o problema provavelmente estará mais relacionado ao SSO do BIG-IP no aplicativo de back-end.

  1. Navegue até Política de Acesso > Visão Geral.
  2. Selecione Sessões Ativas.
  3. Selecione o link para sua sessão ativa.
  4. Selecione o link Exibir Variáveis para determinar quaisquer problemas de SSO.
  5. Confirme se o APM do BIG-IP falha ou consegue obter os identificadores de domínio e de usuário corretos.

Saiba mais:

Recursos