Partilhar via


Configurar o F5 BIG-IP Access Policy Manager para SSO baseado em formulário

Aprenda a configurar o F5 BIG-IP Access Policy Manager (APM) e o Microsoft Entra ID para acesso híbrido seguro (SHA) para aplicativos baseados em formulários. Os serviços publicados pelo BIG-IP para o logon único (SSO) do Microsoft Entra têm benefícios:

  • Governança Zero Trust aprimorada por meio da pré-autenticação e acesso condicional do Microsoft Entra
  • SSO completo entre o Microsoft Entra ID e os serviços publicados pelo BIG-IP
  • Identidades gerenciadas e acesso a partir de um plano de controle

Saiba mais:

Descrição do cenário

Para o cenário, há um aplicativo herdado interno configurado para autenticação baseada em formulário (FBA). Idealmente, o Microsoft Entra ID gerencia o acesso ao aplicativo, porque o legado não possui protocolos de autenticação modernos. A modernização requer tempo e esforço, introduzindo o risco de tempo de inatividade. Em vez disso, implante um BIG-IP entre a Internet pública e o aplicativo interno. Essa configuração cancela o acesso de entrada ao aplicativo.

Com um BIG-IP na frente do aplicativo, você pode sobrepor o serviço com a pré-autenticação do Microsoft Entra e o SSO baseado em cabeçalho. A sobreposição melhora a postura de segurança do aplicativo.

Arquitetura de cenário

A solução SHA tem os seguintes componentes:

  • Aplicação - Serviço publicado BIG-IP protegido por SHA.
    • O aplicativo valida as credenciais do usuário
    • Use qualquer diretório, código aberto e assim por diante
  • Microsoft Entra ID - Provedor de identidade (IdP) SAML (Security Assertion Markup Language) que verifica as credenciais do usuário, Acesso Condicional e SSO para o BIG-IP.
    • Com o SSO, o Microsoft Entra ID fornece atributos para o BIG-IP, incluindo identificadores de usuário
  • BIG-IP - proxy reverso e provedor de serviços SAML (SP) para o aplicativo.
    • BIG-IP delegando autenticação ao IdP SAML e, em seguida, executa SSO baseado em cabeçalho para o aplicativo back-end.
    • O SSO usa as credenciais de usuário armazenadas em cache em outros aplicativos de autenticação baseados em formulários

O SHA suporta fluxos iniciados por SP e IdP. O diagrama a seguir ilustra o fluxo iniciado pelo SP.

Diagrama do fluxo iniciado pelo prestador de serviços.

  1. O usuário se conecta ao ponto de extremidade do aplicativo (BIG-IP).
  2. A política de acesso BIG-IP APM redireciona o usuário para o Microsoft Entra ID (SAML IdP).
  3. O Microsoft Entra pré-autentica o usuário e aplica políticas de Acesso Condicional impostas.
  4. O usuário é redirecionado para BIG-IP (SAML SP) e o SSO ocorre usando o token SAML emitido.
  5. O BIG-IP solicita ao usuário uma senha de aplicativo e a armazena no cache.
  6. O BIG-IP envia uma solicitação para o aplicativo e recebe um formulário de login.
  7. O script APM preenche o nome de usuário e a senha e, em seguida, envia o formulário.
  8. O servidor Web serve a carga útil do aplicativo e a envia para o cliente.

Pré-requisitos

Você precisa dos seguintes componentes:

Configuração BIG-IP

A configuração neste artigo é uma implementação SHA flexível: criação manual de objetos de configuração BIG-IP. Use essa abordagem para cenários que os modelos de Configuração Guiada não cobrem.

Observação

Substitua cadeias de caracteres ou valores de exemplo pelos do seu ambiente.

Registrar F5 BIG-IP no Microsoft Entra ID

Dica

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

O registro BIG-IP é o primeiro passo para o SSO entre entidades. O aplicativo criado a partir do modelo de galeria F5 BIG-IP é a terceira parte confiável, representando a controladora de armazenamento SAML para o aplicativo publicado BIG-IP.

  1. Entre no centro de administração do Microsoft Entra como pelo menos um administrador de aplicativos na nuvem.
  2. Navegue até Identity>Applications>Enterprise applications>Todos os aplicativos.
  3. No painel Todos os aplicativos, selecione Novo aplicativo.
  4. O painel Procurar Galeria do Microsoft Entra é aberto.
  5. Os blocos aparecem para plataformas de nuvem, aplicativos locais e aplicativos em destaque. Os ícones de aplicativos em destaque indicam suporte a SSO federado e provisionamento.
  6. Na galeria do Azure, procure F5.
  7. Selecione F5 BIG-IP APM Microsoft Entra ID integration.
  8. Insira um Nome que o novo aplicativo usa para reconhecer a instância do aplicativo.
  9. Selecione Adicionar.
  10. Selecione Criar.

Habilitar SSO para F5 BIG-IP

Configure o registro BIG-IP para atender aos tokens SAML solicitados pelo BIG-IP APM.

  1. No menu à esquerda, na seção Gerenciar , selecione Logon único.
  2. O painel Logon único é exibido.
  3. Na página Selecione um método de logon único, selecione SAML.
  4. Selecione Não, vou salvar mais tarde.
  5. No painel Configurar logon único com SAML, selecione o ícone da caneta.
  6. Para Identifier, substitua o valor pela URL do aplicativo publicado BIG-IP.
  7. Para URL de resposta, substitua o valor, mas mantenha o caminho para o ponto de extremidade SAML SP do aplicativo. Com essa configuração, o fluxo SAML opera no modo iniciado pelo IdP.
  8. Microsoft Entra ID emite uma asserção SAML e, em seguida, o usuário é redirecionado para o ponto de extremidade BIG-IP.
  9. Para o modo iniciado pelo SP, para URL de logon, insira a URL do aplicativo.
  10. Para URL de Logout, insira o ponto de extremidade de logout único (SLO) do BIG-IP APM precedido pelo cabeçalho do host de serviço.
  11. Em seguida, as sessões de usuário do BIG-IP APM terminam quando os usuários saem do ID do Microsoft Entra.
  12. Selecione Salvar.
  13. Feche o painel de configuração SAML.
  14. Ignore o prompt de teste SSO.
  15. Anote as propriedades da seção Atributos do Usuário & Declarações . O Microsoft Entra ID emite as propriedades para autenticação BIG-IP APM e SSO para o aplicativo back-end.
  16. No painel Certificado de Assinatura SAML , selecione Download.
  17. O arquivo XML de metadados de federação é salvo no seu computador.

Observação

Do TMOS (Traffic Management Operating System) v16 em diante, o ponto de extremidade SAML SLO é /saml/sp/profile/redirect/slo.

Captura de ecrã de URLs na configuração SAML.

Observação

Os certificados de assinatura SAML do Microsoft Entra têm uma vida útil de três anos.

Saiba mais: Tutorial: Gerenciar certificados para logon único federado

Atribuir usuários e grupos

O Microsoft Entra ID emite tokens para usuários que recebem acesso a um aplicativo. Para conceder acesso a aplicativos específicos de usuários e grupos:

  1. No painel de visão geral do aplicativo F5 BIG-IP, selecione Atribuir usuários e grupos.
  2. Selecione + Adicionar usuário/grupo.
  3. Selecione os usuários e grupos desejados.
  4. Selecione Atribuir.

Configuração avançada BIG-IP

Use as instruções a seguir para configurar o BIG-IP.

Definir configurações do provedor de serviços SAML

As configurações da controladora de armazenamento SAML definem as propriedades da controladora de armazenamento SAML que o APM usa para sobrepor o aplicativo herdado com a pré-autenticação SAML. Para configurá-los:

  1. Selecione Access>Federation>SAML Service Provider.

  2. Selecione Serviços de SP Local.

  3. Selecione Criar.

    Captura de ecrã da opção Criar no separador Fornecedor de Serviços SAML.

  4. Em Criar Novo Serviço de SP SAML, para Nome e ID de Entidade, insira o nome definido e o ID da entidade.

    Captura de tela dos campos Nome e ID da entidade em Criar novo serviço SAML SP.

    Observação

    Os valores de Configurações de Nome da controladora de armazenamento serão necessários se o ID da entidade não corresponder à parte do nome do host da URL publicada. Ou, os valores são necessários se o ID da entidade não estiver no formato de URL baseado em nome de host regular.

  5. Se o ID da entidade for urn:myvacation:contosoonline, insira o esquema externo do aplicativo e o nome do host.

Configurar um conector IdP externo

Um conector IdP SAML define configurações para o BIG-IP APM confiar no Microsoft Entra ID como seu IdP SAML. As configurações conectam o provedor de serviços SAML a um IdP SAML, que estabelece a confiança de federação entre o APM e o ID do Microsoft Entra.

Para configurar o conector:

  1. Selecione o novo objeto do provedor de serviços SAML.

  2. Selecione Bind/UnbBind IdP Connectors.

    Captura de ecrã da opção Bind Unbind IdP Connectors no separador SAML Service Provider.

  3. Na lista Criar novo conector IdP, selecione Dos metadados.

    Captura de tela da opção De metadados na lista suspensa Criar novo conector IdP.

  4. No painel Criar Novo Conector IdP SAML, procure o arquivo XML de Metadados de Federação que você baixou.

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

    Captura de tela dos campos Selecionar nome do arquivo e do provedor de identidade em Criar novo conector IdP SAML.

  6. Selecione Adicionar nova linha.

  7. Selecione o novo conector IdP SAML.

  8. Selecione Atualizar.

    Captura de ecrã da opção Atualizar.

  9. Selecione OK.

    Captura de tela da caixa de diálogo Editar IdPs SAML que usam esta controladora de armazenamento.

Configurar SSO baseado em formulários

Crie um objeto APM SSO para FBA SSO para aplicativos back-end.

Execute o SSO do FBA no modo iniciado pelo cliente ou no modo iniciado pelo BIG-IP. Ambos os métodos emulam um logon de usuário injetando credenciais nas tags de nome de usuário e senha. O formulário é enviado. Os usuários fornecem senha para acessar um aplicativo FBA. A senha é armazenada em cache e reutilizada para outros aplicativos FBA.

  1. Selecione Acessar>Logon Único.

  2. Selecione Baseado em formulários.

  3. Selecione Criar.

  4. Em Nome, insira um nome descritivo. Por exemplo, Contoso\FBA\sso.

  5. Em Usar modelo de SSO, selecione Nenhum.

  6. Em Username Source, insira o username source para pré-preencher o formulário de coleta de senha. O padrão session.sso.token.last.username funciona bem, porque ele tem o usuário conectado Microsoft Entra User Principal Name (UPN).

  7. Para Password Source, mantenha o padrão session.sso.token.last.password que a variável APM BIG-IP usa para armazenar senhas de usuário em cache.

    Captura de tela das opções Nome e Usar Modelo SSO em Nova Configuração de SSO.

  8. Para Iniciar URI, insira o URI de logon do aplicativo FBA. Se o URI da solicitação corresponder a esse valor de URI, a autenticação baseada em formulário APM executará o SSO.

  9. Para Ação de formulário, deixe-o em branco. Em seguida, a URL de solicitação original é usada para SSO.

  10. Para Form Parameter for Username, insira o elemento de campo de nome de usuário do formulário de login. Use as ferramentas de desenvolvimento do navegador para determinar o elemento.

  11. Para Parâmetro de formulário para senha, insira o elemento de campo de senha do formulário de login. Use as ferramentas de desenvolvimento do navegador para determinar o elemento.

Captura de ecrã dos campos Iniciar URI, Parâmetro de formulário para nome de utilizador e Parâmetro de formulário para palavra-passe.

Captura de ecrã da página de início de sessão com textos explicativos para o campo de nome de utilizador e campo de palavra-passe.

Para saber mais, vá para techdocs.f5.com para Capítulo Manual: Métodos de logon único.

Configurar um perfil de acesso

Um perfil de acesso vincula os elementos APM que gerenciam o acesso aos servidores virtuais BIG-IP, incluindo políticas de acesso, configuração de SSO e configurações de interface do usuário.

  1. Selecione Perfis / Políticas de Acesso>.

  2. Selecione Perfis de acesso (políticas por sessão).

  3. Selecione Criar.

  4. Insira um Nome.

  5. Em Tipo de perfil, selecione Todos.

  6. Para Configuração de SSO, selecione o objeto de configuração de SSO FBA que você criou.

  7. Em Idioma aceito, selecione pelo menos um idioma.

    Captura de ecrã de opções e seleções em Perfis de Acesso por Políticas de Sessão, Novo Perfil.

  8. Na coluna Política por sessão, para o perfil, selecione Editar.

  9. O APM Visual Policy Editor é iniciado.

    Captura de ecrã da opção Editar na coluna Política por sessão.

  10. Em fallback, selecione o + sinal.

Captura de tela da opção de sinal de adição do APM Visual Policy Editor em fallback.

  1. No pop-up, selecione Autenticação.
  2. Selecione Autenticação SAML.
  3. Selecione Adicionar item.

Captura de tela da opção SAML Auth.

  1. No SP, altere o Nome para Microsoft Entra auth.
  2. Na lista suspensa Servidor AAA, insira o objeto do provedor de serviços SAML que você criou.

Captura de tela mostrando as configurações do servidor de autenticação do Microsoft Entra.

  1. Na ramificação Bem-sucedida, selecione o + sinal.
  2. No pop-up, selecione Autenticação.
  3. Selecione Página de Logon.
  4. Selecione Adicionar item.

Captura de ecrã da opção Página de Início de Sessão no separador Logon.

  1. Para nome de usuário, na coluna Somente leitura, selecione Sim.

Captura de ecrã da opção Sim na linha de nome de utilizador no separador Propriedades.

  1. Para o fallback da página de login, selecione o + sinal. Esta ação adiciona um objeto de mapeamento de credenciais SSO.

  2. No pop-up, selecione a guia Atribuição .

  3. Selecione Mapeamento de credenciais SSO.

  4. Selecione Adicionar item.

    Captura de tela da opção Mapeamento de credenciais SSO na guia Atribuição.

  5. Em Atribuição de variáveis: mapeamento de credenciais SSO, mantenha as configurações padrão.

  6. Selecione Salvar.

    Captura de ecrã da opção Guardar no separador Propriedades.

  7. Na caixa superior Negar , selecione o link.

  8. A ramificação Bem-sucedida muda para Permitir.

  9. Selecione Salvar.

(Opcional) Configurar mapeamentos de atributos

Você pode adicionar uma configuração LogonID_Mapping. Em seguida, 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 essas informações para analisar logs ou solucionar problemas.

  1. Para a ramificação SAML Auth Successful (Autenticação SAML bem-sucedida ), selecione o + sinal.

  2. No pop-up, selecione Atribuição.

  3. Selecione Atribuição de variáveis.

  4. Selecione Adicionar item.

    Captura de ecrã da opção Atribuir Variável no separador Atribuição.

  5. Na guia Propriedades, insira um Nome. Por exemplo, LogonID_Mapping.

  6. Em Atribuição de variáveis, selecione Adicionar nova entrada.

  7. Selecione alterar.

    Captura de ecrã da opção Adicionar nova entrada e da opção de alteração.

  8. Para Variável personalizada, use session.logon.last.username.

  9. Para variável de sessão, usuário session.saml.last.identity.

  10. Selecione Concluído.

  11. Selecione Salvar.

  12. Selecione Aplicar política de acesso.

  13. Feche o Editor de Política Visual.

Captura de ecrã da política de acesso em Aplicar Política de Acesso.

Configurar um pool de back-end

Para permitir que o BIG-IP encaminhe o tráfego do cliente corretamente, crie um objeto de nó BIG-IP que represente o servidor back-end que hospeda seu aplicativo. Em seguida, coloque esse nó em um pool de servidores BIG-IP.

  1. Selecione Pools de tráfego> local.

  2. Selecione Lista de Piscinas.

  3. Selecione Criar.

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

    Captura de tela do campo Nome em Novo Pool.

  5. Em Nome do Nó, insira um nome de exibição do servidor. Este servidor hospeda o aplicativo Web back-end.

  6. Em Endereço, insira o endereço IP do host do servidor de aplicativos.

  7. Para Porta de serviço, insira a porta HTTP/S na qual o aplicativo está escutando.

    Captura de ecrã dos campos Nome do Nó, Endereço, Porta de Serviço e a opção Adicionar.

    Observação

    Os monitores de integridade exigem configuração que este artigo não aborda. Vá para support.f5.com para K13397: Visão geral da formatação de solicitação de monitor de integridade HTTP para o sistema BIG-IP DNS.

Configurar um servidor virtual

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

Para configurar um servidor virtual:

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

  2. Selecione Lista de Servidores Virtuais.

  3. Selecione Criar.

  4. Insira um Nome.

  5. Em Endereço de Destino/Máscara, selecione Host e insira um endereço IPv4 ou IPv6. O endereço recebe tráfego de cliente para o aplicativo back-end publicado.

  6. Em Porta de serviço, selecione Porta, digite 443 e selecione HTTPS.

    Captura de ecrã dos campos e opções Nome, Endereço de Destino e Porta de Serviço.

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

  8. Para Perfil SSL (Cliente), selecione o perfil que você criou ou deixe o padrão para teste. Essa opção permite que um servidor virtual para TLS (Transport Layer Security) publique serviços por HTTPS.

    Captura de tela das opções Cliente de Perfil HTTP e Cliente de Perfil SSL.

  9. Para Tradução de Endereço de Origem, selecione Mapa Automático.

    Captura de ecrã da seleção de Mapa Automático para Tradução de Endereço de Origem.

  10. Em Política de Acesso, na caixa Perfil de Acesso , introduza o nome que criou. Esta ação vincula o perfil de pré-autenticação SAML do Microsoft Entra e a política de SSO FBA ao servidor virtual.

Captura de ecrã da entrada Perfil de Acesso em Política de Acesso.

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

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

Definir configurações de gerenciamento de sessão

As configurações de gerenciamento de sessão BIG-IP definem condições para o término e a continuação das sessões. Criar uma política nesta área.

  1. Vá para Política de Acesso.
  2. Selecione Perfis de acesso.
  3. Selecione Perfil de acesso.
  4. Na lista, selecione seu aplicativo.

Se você definiu um único valor de URI de logout no Microsoft Entra ID, o logout iniciado pelo IdP de MyApps encerra o cliente e a sessão BIG-IP APM. O arquivo XML de metadados de federação de aplicativos importados fornece ao APM o ponto de extremidade SAML do Microsoft Entra para saída iniciada pelo SP. Verifique se o APM responde corretamente à saída de um usuário.

Se não houver um portal da Web BIG-IP, os usuários não poderão instruir o APM a sair. Se o usuário sair do aplicativo, o BIG-IP será esquecido. A sessão de aplicação pode ser restabelecida através de SSO. Para sair iniciado pelo SP, certifique-se de que as sessões sejam encerradas com segurança.

Você pode adicionar uma função SLO ao botão de saída do aplicativo. Esta função redireciona o cliente para o ponto de extremidade de saída do Microsoft Entra SAML. Para localizar o ponto de extremidade de saída do SAML, vá para Pontos de extremidade de registros de > aplicativos.

Se você não puder alterar o aplicativo, peça ao BIG-IP para ouvir a chamada de saída do aplicativo e acionar o SLO.

Saiba mais:

Aplicação publicada

Seu aplicativo é publicado e acessível com SHA com a URL do aplicativo ou portais da Microsoft.

O aplicativo aparece como um recurso de destino no Acesso Condicional. Saiba mais: Criando uma política de Acesso Condicional.

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

Teste

  1. O usuário se conecta à URL externa do aplicativo, ou em Meus Aplicativos, e seleciona o ícone do aplicativo.

  2. O usuário se autentica no Microsoft Entra ID.

  3. O usuário é redirecionado para o ponto de extremidade BIG-IP do aplicativo.

  4. O prompt de senha é exibido.

  5. O APM preenche o nome de usuário com o UPN do ID do Microsoft Entra. O nome de usuário é somente leitura para consistência da sessão. Oculte este campo, se necessário.

  6. As informações são enviadas.

  7. O usuário está conectado ao aplicativo.

    Captura de ecrã da página de boas-vindas.

Solução de problemas

Ao solucionar problemas, considere as seguintes informações:

  • O BIG-IP executa o SSO do FBA enquanto analisa o formulário de entrada no URI

    • O BIG-IP procura as tags de elemento de nome de usuário e senha de sua configuração
  • Confirme se as tags de elemento são consistentes ou se o SSO falhar

  • Formulários complexos gerados dinamicamente podem exigir análise da ferramenta de desenvolvimento para entender o formulário de login

  • A iniciação do cliente é melhor para iniciar sessão em páginas com vários formulários

    • Você pode selecionar o nome do formulário e personalizar a lógica do manipulador de formulários JavaScript
  • Os métodos de SSO do FBA ocultam interações de formulário para otimizar a experiência e a segurança do usuário:

    • Você pode validar se as credenciais forem injetadas
    • No modo iniciado pelo cliente, desative o envio automático de formulários em seu perfil de SSO
    • Use ferramentas de desenvolvimento para desabilitar as duas propriedades de estilo que impedem que a página de entrada apareça

    Captura de ecrã da página Propriedades.

Aumentar a verborragia do log

Os logs BIG-IP contêm informações para isolar problemas de autenticação e SSO. Aumente o nível de verbosidade do log:

  1. Vá para Visão geral da política>de acesso.
  2. Selecione Logs de eventos.
  3. Selecione Configurações.
  4. Selecione a linha do seu aplicativo publicado.
  5. Selecione Editar.
  6. Selecione Acessar logs do sistema.
  7. Na lista SSO, selecione Depurar.
  8. Selecione OK.
  9. Reproduza o problema.
  10. Revise os logs.

Reverta as configurações, caso contrário, há dados excessivos.

Mensagem de erro BIG-IP

Se aparecer um erro BIG-IP após a pré-autenticação do Microsoft Entra, o problema poderá estar relacionado com o Microsoft Entra ID e o BIG-IP SSO.

  1. Vá para Visão geral do acesso>.
  2. Selecione Acessar relatórios.
  3. Execute o relatório na última hora.
  4. Revise os logs para obter pistas.

Use o link Exibir variáveis de sessão para sua sessão para determinar se o APM recebe declarações esperadas do Microsoft Entra.

Nenhuma mensagem de erro BIG-IP

Se nenhuma mensagem de erro BIG-IP for exibida, o problema pode estar relacionado à solicitação de back-end ou ao SSO BIG-IP para aplicativo.

  1. Selecione Visão geral da política de>acesso.
  2. Selecione Sessões ativas.
  3. Selecione o link da sessão ativa.

Use o link Exibir variáveis neste local para ajudar a determinar a causa raiz, especialmente se o APM não conseguir obter o identificador de usuário e a senha corretos.

Para saber mais, vá para techdocs.f5.com para Capítulo Manual: Variáveis de sessão.

Recursos