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. O ideal é que a ID do Microsoft Entra gerencie o acesso ao aplicativo. No entanto, o herdado não tem 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.

Diagrama do fluxo do usuário com Azure AD, BIG-IP, APM e um aplicativo

  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:

  • Uma assinatura do Azure
  • Uma das seguintes funções: Administrador Global, Administrador de Aplicativos de Nuvem ou Administrador de Aplicativos
  • Um BIG-IP ou implantar uma VE (Virtual Edition) do BIG-IP no Azure
  • Qualquer uma das seguintes licenças de F5 BIG-IP:
    • Pacote F5 BIG-IP® Best
    • Licença autônoma do BIG-IP Access Policy Manager™ (APM) da F5
    • Licença de complemento do F5 BIG-IP APM (Access Policy Manager™) em um LTM (Local Traffic Manager™) BIG-IP® do BIG-IP F5
    • Avaliação gratuita completa de 90 dias do BIG-IP. Confira Avaliações gratuitas.
  • Identidades de usuário sincronizadas de um diretório local para o Microsoft Entra ID
  • Um certificado SSL para publicar serviços via HTTPS ou usar certificados padrão durante o teste
  • Um aplicativo baseado em cabeçalho ou um aplicativo de cabeçalho IIS para teste

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 F5 BIG-IP APM Microsoft Entra ID integration.

  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

    Captura de tela da entrada da Configuração básica do SAML para identificador, URL de resposta, URL de logon, 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

Captura de tela de entrada para Nome e Atributo de origem, na caixa de diálogo Gerenciar.

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

Captura de tela de entrada para Atributo de Origem na caixa de diálogo Declarações de Grupo.

  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.

Captura de tela de Atributos do Usuário e informações de Declarações como sobrenome, endereço de email, identidade, 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.

Captura de tela do link de download para o XML de Metadados de Federação na caixa de diálogo Certificado de Autenticação SAML.

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

Para federar o aplicativo publicado com a ID do Microsoft Entra, crie o provedor de serviços SAML BIG-IP e os objetos IdP saml correspondentes.

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

    Captura de tela da opção Criar na guia Provedor de Serviços SAML.

  2. Insira um Nome.

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

    Captura de tela das entradas de Nome e ID da Entidade na caixa de diálogo Criar Novo Serviço SP do SAML.

  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.

    Captura de tela da opção Associar/Desassociar Conectores IdP na guia Provedor de Serviços SAML.

  7. Selecione Criar Novo Conector IdP.

  8. No menu suspenso, selecione De Metadados.

    Captura de tela da opção De metadados no menu suspenso Criar Novo Conector IdP.

  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_EntraID

Captura de tela de entradas de Selecionar Arquivo e Nome de Provedor de Identidade em Criar Novo Conector IdP do SAML.

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

Captura de tela da opção Atualizar em Conectores IdP do SAML.

  1. Selecione OK.

Captura de tela das configurações salvas

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.

    Captura de tela de entrada de Nome e Linguagem Aceita.

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

    Captura de tela da opção Editar na coluna Política por Solicitação.

  6. O editor de política visual inicia.

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

    Captura de tela da opção mais em fallback.

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

    Captura de tela da opção Cabeçalhos HTTP.

  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.

Captura de tela de entrada de cabeçalho em Modificar Cabeçalho HTTP, na guia Propriedades.

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

Captura de tela do editor de política visual.

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.

    Captura de tela das entradas Nome, Tipo de Perfil e Idioma em Linguagem Aceita.

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

    Captura de tela da opção Editar na coluna Política por Sessão.

  7. O editor de política visual inicia.

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

    Captura de tela da opção mais.

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

    Captura de tela da opção autenticação SAML na guia Autenticação.

  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. Clique em Salvar.

Captura de tela da seleção Servidor AAA.

Mapeamento de atributos

As instruções a seguir são opcionais. Com uma configuração de LogonID_Mapping, a lista de sessões ativas do BIG-IP tem o UPN (nome de entidade de 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 +.

    Captura de tela do símbolo mais na ramificação da Autenticação SAML Bem-Sucedida.

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

    Captura de tela da opção Atribuir Variável na guia Atribuição.

  3. Insira um Nome

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

    Captura de tela das opções Adicionar nova entrada e Alterar

  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.

    Captura de tela de Aplicar Política de Acesso.

  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.

    Captura de tela de entrada para Nome do Nó, Endereço e Porta de Serviço e a opção Adicionar.

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.

    Captura de tela das entradas Nome, Endereço de Destino/Máscara e Porta de Serviço.

  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.

    Captura de tela das entradas Cliente de Perfil HTTP e Cliente de Perfil SSL.

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

    Captura de tela da opção Tradução de Endereço de Origem.

  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.

Captura de tela de entradas para Perfil de Acesso e Política por Solicitação.

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

Captura de tela da opção Pool Padrão em Recursos.

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

Execute o teste a seguir como usuário.

  1. Selecione a URL externa do aplicativo ou, no portal do MyApps, selecione o ícone do aplicativo.

  2. Autentique-se no Microsoft Entra ID.

  3. Um redirecionamento ocorre para o servidor virtual BIG-IP para o aplicativo e conectado com o SSO.

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

    Captura de tela de Variáveis de Servidor, como UPN, ID de Funcionário e Autorização de Grupo.

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