Estender o AD FS local para o Azure

azure-active-directory
Microsoft Entra
Azure Load Balancer

Essa arquitetura de referência implementa uma rede híbrida segura que estende a rede local para o Azure e usa o Serviços de Federação do Active Directory (AD FS) para executar autenticação e autorização federadas para componentes em execução no Azure.

Arquitetura

Diagrama mostrando um exemplo de uma arquitetura de rede híbrida segura com Serviços de Federação do Active Directory (AD FS).

Baixe um Arquivo Visio dessa arquitetura.

Observação

O arquivo do Visio inclui 4 guias de diagramas. Selecione a guia AD FS para ver o diagrama de arquitetura relevante para este artigo.

Fluxo de trabalho

  • Sub-rede do AD DS. Os servidores do AD DS estão contidos em suas próprias sub-redes com as regras do NSG (Grupo de Segurança de Rede) atuando como um firewall.

  • Servidores do AD DS. Controladores de domínio em execução como VMs no Azure. Esses servidores fornecem autenticação de identidades locais dentro do domínio.

  • Sub-rede do AD FS. Os servidores do AD FS estão localizados em suas próprias sub-redes com regras do NSG atuando como um firewall.

  • Servidores do AD FS. Os servidores do AD FS fornecem autenticação e autorização federadas. Nessa arquitetura, eles executam as seguintes tarefas:

    • Recebimento de tokens de segurança contendo declarações feitas por um servidor de federação do parceiro em nome de um usuário do parceiro. O AD FS verifica se os tokens são válidos antes de passar as declarações para o aplicativo Web em execução no Azure para autorizar solicitações.

      O aplicativo em execução no Azure é a terceira parte confiável. O servidor de federação do parceiro deve emitir declarações que sejam entendidas pelo aplicativo Web. Os servidores de federação do parceiro são chamados de parceiros de conta, porque eles enviam solicitações de acesso em nome de contas autenticadas na organização do parceiro. Os servidores do AD FS são chamados de parceiros de recurso porque eles fornecem acesso aos recursos (o aplicativo Web).

    • Autenticação e autorização de solicitações recebidas de usuários externos executando um navegador da Web ou um dispositivo que precise de acesso a aplicativos Web, usando o AD DS e o Serviço de registro de dispositivo do Active Directory.

    Os servidores do AD FS são configurados como um farm acessado por meio de um Azure Load Balancer. Essa implementação melhora a disponibilidade e escalabilidade. Os servidores do AD FS não são expostos diretamente à Internet. Todo o tráfego de Internet é filtrado por meio de servidores proxy de aplicativo Web do AD FS e de uma rede de perímetro (também conhecida como DMZ).

    Para obter mais informações de como funciona o AD FS, consulte Visão geral dos Serviços de Federação do Active Directory (AD FS). Além disso, o artigo Implantação do AD FS no Azure contém uma introdução passo a passo detalhada da implementação.

  • Sub-rede de proxy do AD FS. Os servidores proxy do AD FS podem estar contidos em suas próprias sub-redes com regras do NSG fornecendo proteção. Os servidores nesta sub-rede são expostos à Internet por meio de um conjunto de soluções de virtualização de rede que fornecem um firewall entre a sua rede virtual do Azure e a Internet.

  • Servidores WAP (Proxy de aplicativo Web) do AD FS. Essas VMs atuam como servidores do AD FS para solicitações recebidas de organizações parceiras e de dispositivos externos. Os servidores WAP atuam como um filtro, blindando os servidores do AD FS contra acesso direto da Internet. Assim como acontece com os servidores do AD FS, a implantação de servidores WAP em um farm com balanceamento de carga fornece maior disponibilidade e escalabilidade do que a implantação de uma coleção de servidores autônomos.

    Observação

    Para obter informações detalhadas de como instalar servidores WAP, consulte Instalar e configurar o servidor proxy de aplicativo Web

  • Organização parceira. Uma organização parceira que executa um aplicativo Web que solicita acesso a um aplicativo Web em execução no Azure. O servidor de federação na organização parceira autentica as solicitações localmente e envia tokens de segurança contendo declarações para o AD FS em execução no Azure. O AD FS no Azure valida os tokens de segurança e, quando eles são válidos, passa as declarações para o aplicativo Web em execução no Azure para autorizá-los.

    Observação

    Você também pode configurar um túnel de VPN usando o gateway do Azure para fornecer acesso direto ao AD FS para parceiros confiáveis. As solicitações recebidas desses parceiros não passam por servidores WAP.

Componentes

Essa arquitetura estende a implementação descrita em Estendendo o AD DS (Active Directory Domain Services) para o Azure. Ele contém os seguintes componentes.

Detalhes do cenário

O AD FS pode ser hospedado localmente, mas se o aplicativo for um híbrido no qual algumas partes são implementadas no Azure, pode ser mais eficiente replicar o AD FS na nuvem.

O diagrama anterior mostra os seguintes cenários:

  • O código do aplicativo de uma organização parceira acessa um aplicativo Web hospedado dentro de sua VNet do Azure.
  • Um usuário externo, registrado com credenciais armazenadas no DS (Active Directory Domain Services) acessa um aplicativo Web hospedado dentro de sua VNet do Azure.
  • Um usuário conectado à sua VNet usando um dispositivo autorizado executa um aplicativo Web hospedado dentro de sua VNet do Azure.

Essa arquitetura de referência concentra-se na federação passiva, na qual os servidores de federação decidem como e quando autenticar um usuário. O usuário fornece informações de entrada quando o aplicativo é iniciado. Esse mecanismo geralmente é usado por navegadores da Web e envolve um protocolo que redireciona o navegador para um site em que o usuário é autenticado. O AD FS também dá suporte para federação ativa, na qual um aplicativo assume a responsabilidade de fornecer credenciais sem interação adicional do usuário, mas esse cenário está fora do escopo dessa arquitetura.

Para outras considerações, confira Escolher uma solução para integrar Active Directory local ao Azure.

Possíveis casos de uso

Alguns usos típicos dessa arquitetura:

  • Aplicativos híbridos nos quais as cargas de trabalho são executadas parcialmente localmente e parcialmente no Azure.
  • Soluções que usam a autorização federada para expor aplicativos Web a organizações parceiras.
  • Sistemas que dão suporte a acesso de navegadores da Web em execução fora do firewall organizacional.
  • Sistemas que permitem que os usuários acessem aplicativos Web se conectando de dispositivos externos autorizados, como computadores remotos, notebooks e outros dispositivos móveis.

Recomendações

As seguintes recomendações aplicam-se à maioria dos cenários. Siga estas recomendações, a menos que você tenha um requisito específico que as substitua.

Recomendações de rede

Configure o adaptador de rede para cada uma das VMs que hospedam o AD FS e os servidores WAP com endereços IP privados estáticos.

Não forneça os endereços IP públicos das VMs do AD FS. Para obter mais informações, confira a seção Considerações de segurança.

Defina o endereço IP dos servidores DNS (Serviço de Nomes de Domínio) preferencial e secundários para os adaptadores de rede de cada VM do AD FS e do WAP para referenciar as VMs do Active Directory DS. As VMs do Active Directory DS devem estar executando o DNS. Essa etapa é necessária para habilitar cada VM para ingressar no domínio.

Instalação do AD FS

O artigo Implantando um Farm de Servidores de Federação fornece instruções detalhadas para instalar e configurar o AD FS. Execute as seguintes tarefas antes de configurar o primeiro servidor do AD FS no farm:

  1. Obtenha um certificado confiável publicamente para executar a autenticação do servidor. O nome da entidade deve conter o nome que os clientes usam para acessar o serviço de federação. Pode ser o nome DNS registrado para o balanceador de carga, por exemplo, adfs.contoso.com (evite usar nomes com caracteres curinga, como *.contoso.com, por motivos de segurança). Use o mesmo certificado em todas as VMs de servidor do AD FS. É possível comprar um certificado de uma autoridade de certificação confiável, mas se a sua organização usa os Serviços de Certificados do Active Directory, você pode criar seus próprios certificados.

    O nome alternativo da entidade é usado pelo DRS (serviço de registro de dispositivo) para habilitar o acesso de dispositivos externos. O formato deve ser enterpriseregistration.contoso.com.

    Para obter mais informações, consulte Obter e configurar um certificado de protocolo SSL para o AD FS.

  2. No controlador de domínio, gere uma nova chave de raiz para o Serviço de Distribuição de Chave. Defina o tempo efetivo para a hora atual menos 10 horas (essa configuração reduz o atraso que pode ocorrer na distribuição e na sincronização de chaves no domínio). Essa etapa é necessária para dar suporte à criação da conta de serviço de grupo que é usada para executar o serviço do AD FS. O comando do PowerShell a seguir mostra um exemplo de como fazer isso:

    Add-KdsRootKey -EffectiveTime (Get-Date).AddHours(-10)
    
  3. Adicione cada VM de servidor do AD FS no domínio.

Observação

Para instalar o AD FS, o controlador de domínio que executa a função FSMO (Flexible Single Master Operation) do emulador do PDC (controlador de domínio primário) do domínio deve estar em execução e acessível para as VMs do AD FS.

Relação de confiança do AD FS

Estabelece a relação de confiança de federação entre a instalação do AD FS e os servidores de federação de qualquer organização parceira. Configure as filtragens e os mapeamentos de declaração necessários.

  • A equipe de DevOps em cada organização parceira deve adicionar um objeto de confiança de terceira parte confiável para os aplicativos Web acessíveis por meio dos servidores do AD FS.
  • A equipe de DevOps em sua organização deve configurar a relação de confiança do provedor de declarações para permitir que os servidores do AD FS confiem nas declarações que as organizações parceiras fornecem.
  • A equipe de DevOps na organização também deve configurar o AD FS para transmitir declarações para os aplicativos Web da organização.

Para obter mais informações, consulte Establishing Federation Trust (Estabelecendo uma relação de confiança de federação).

Publique os aplicativos Web da organização e disponibilize-os a parceiros externos usando a pré-autenticação por meio dos servidores do WAP. Para obter mais informações, consulte Publicar aplicativos usando a pré-autenticação do AD FS

O AD FS dá suporte para aumento e transformação de token. O Azure Active Directory não fornece esse recurso. Com o AD FS, ao configurar as relações de confiança, você pode:

  • Configurar transformações de declaração para regras de autorização. Por exemplo, você pode mapear a segurança do grupo de uma representação usada por uma organização que não seja parceira da Microsoft para algo que o Active Directory DS possa autorizar em sua organização.
  • Transforme declarações de um formato para outro. Por exemplo, você poderá mapear de SAML 2.0 para SAML 1.1 se seu aplicativo somente der suporte para declarações SAML 1.1.

Monitoramento do AD FS

O Pacote de Gerenciamento do Microsoft System Center para Serviços de Federação do Active Directory (AD FS) 2012 R2 fornece monitoramento proativo e reativo de sua implantação do AD FS para o servidor de federação. Este pacote de gerenciamento monitora:

  • Eventos que o serviço do AD FS registra em seus logs de eventos.
  • Os dados de desempenho que os contadores de desempenho do AD FS coletam.
  • A integridade geral do sistema AD FS e dos aplicativos Web (terceiras partes confiáveis) e fornece alertas sobre problemas críticos e avisos.

Outra opção é Monitorar o AD FS usando o Azure AD Connect Health. O Azure AD (Azure Active Directory) Connect Health fornece um monitoramento robusto de sua infraestrutura de identidade local. Ele permite que você mantenha uma conexão confiável com o Microsoft 365 e os Microsoft Online Services. Essa confiabilidade é obtida fornecendo recursos de monitoramento para seus principais componentes de identidade. Além disso, ela torna os pontos de dados principais desses componentes facilmente acessíveis.

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios de orientação que podem ser usados para aprimorar a qualidade de uma carga de trabalho. Para obter mais informações, confira Microsoft Azure Well-Architected Framework.

Eficiência de desempenho

A eficiência do desempenho é a capacidade de dimensionar sua carga de trabalho para atender às demandas colocadas por usuários de maneira eficiente. Para saber mais, confira Visão geral do pilar de eficiência de desempenho.

As considerações a seguir, resumidas do artigo Planejar sua implantação do AD FS, oferecem um ponto inicial para o dimensionamento de farms do AD FS:

  • Se você tiver menos de 1.000 usuários, não crie servidores dedicados, mas instale o AD FS em cada um dos servidores DS do Active Directory na nuvem. Verifique se há pelo menos dois servidores do Active Directory DS para manter a disponibilidade. Crie um único servidor do WAP.
  • Se você tiver entre 1000 e 15.000 usuários, crie dois servidores AD FS dedicados e dois servidores WAP dedicados.
  • Se você tiver entre 15.000 e 60.000 usuários, crie entre três e cinco servidores AD FS dedicados e pelo menos dois servidores WAP dedicados.

Essas considerações pressupõem que você esteja usando tamanhos duplos de VM quad-core (standard D4_v2 ou melhor) no Azure.

Se você estiver usando o Banco de Dados Interno do Windows para armazenar dados de configuração do AD FS, estará limitado a oito servidores do AD FS no farm. Se você prever que precisa de mais no futuro, use SQL Server. Para saber mais, confira A função do banco de dados de configuração de AD FS.

Confiabilidade

A confiabilidade garante que seu aplicativo possa cumprir os compromissos que você assume com seus clientes. Para obter mais informações, consulte Visão geral do pilar de confiabilidade.

Crie um farm do AD FS com pelo menos dois servidores para aumentar a disponibilidade do serviço. Use contas de armazenamento diferentes para cada VM do AD FS no farm. Essa abordagem ajuda a garantir que uma falha em uma única conta de armazenamento não torne todo o farm inacessível.

Crie conjuntos de disponibilidade do Azure separados para as VMs do AD FS e do WAP. Verifique se há pelo menos duas VMs em cada conjunto. Cada conjunto de disponibilidade deve ter pelo menos dois domínios de atualização e dois domínios de falha.

Configure os balanceadores de carga das VMs do AD FS e das VMs do WAP da seguinte maneira:

  • Use um Azure Load Balancer para fornecer acesso externo para as VMs do WAP e um balanceador de carga interno para distribuir a carga entre os servidores do AD FS no farm.

  • Passe apenas o tráfego que aparece na porta 443 (HTTPS) para os servidores do AD FS/WAP.

  • Forneça um endereço IP estático ao balanceador de carga.

  • Crie uma investigação de integridade usando HTTP em /adfs/probe. Para saber mais, veja Verificações de integridade do balanceador de carga de hardware e o proxy de aplicativo Web/AD FS 2012 R2.

    Observação

    Os servidores do AD FS usam o protocolo SNI (Indicação de Nome de Servidor), portanto, haverá falha na tentativa de investigar usando um ponto de extremidade HTTPS do balanceador de carga.

  • Adicione um registro DNS A para o domínio do balanceador de carga do AD FS. Especifique o endereço IP do balanceador de carga e nomeie-o no domínio (como adfs.contoso.com). Esse é o nome que os clientes e os servidores do WAP usam para acessar o farm de servidores do AD FS.

Você pode usar o SQL Server ou o Banco de Dados Interno do Windows para manter as informações de configuração do AD FS. O Banco de Dados Interno do Windows fornece redundância básica. As alterações são gravadas diretamente em apenas um dos bancos de dados do AD FS no cluster do AD FS, enquanto os outros servidores usam a replicação pull para manter seus bancos de dados atualizados. O uso do SQL Server pode fornecer redundância total de banco de dados e alta disponibilidade usando clustering de failover ou espelhamento.

Segurança

A segurança fornece garantias contra ataques deliberados e o abuso de seus dados e sistemas valiosos. Para saber mais, confira Visão geral do pilar de segurança.

O AD FS usa HTTPS, ou seja, verifique se as regras do NSG da sub-rede que contém as VMs da camada da Web permitem solicitações HTTPS. Essas solicitações podem ser originadas na rede local, nas sub-redes que contém a camada da Web, na camada de negócios, na camada de dados, no DMZ privado, no DMZ público e na sub-rede que contém os servidores do AD FS.

Evite a exposição direta dos servidores do AD FS à Internet. Os servidores do AD FS são computadores ingressados no domínio que têm autorização total para conceder tokens de segurança. Se um servidor estiver comprometido, um usuário mal-intencionado poderá emitir tokens de acesso completo a todos os aplicativos Web e a todos os servidores de federação protegidos pelo AD FS. Se o sistema precisar lidar com solicitações de usuários externos que não se conectam de sites de parceiros confiáveis, use os servidores do WAP para lidar com essas solicitações. Para obter mais informações, consulte Onde colocar um Proxy do servidor de Federação.

Coloque os servidores do AD FS e os servidores do WAP em sub-redes separadas com seus próprios firewalls. Você pode usar as regras do NSG para definir as regras de firewall. Todos os firewalls devem permitir o tráfego na porta 443 (HTTPS).

Restrinja o acesso de entrada direta para os servidores do AD FS e do WAP. Equipe de DevOps só deve ser capaz de se conectar. Não ingresse os servidores WAP no domínio.

Considere usar um conjunto de soluções de virtualização de rede que registre informações detalhadas sobre o tráfego que atravessa a borda da sua rede virtual para fins de auditoria.

Otimização de custo

A otimização de custos é a análise de maneiras de reduzir as despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, confira Visão geral do pilar de otimização de custo.

Aqui estão as considerações de custo para os serviços usados nesta arquitetura.

AD Domain Services

Considere a possibilidade de usar o Active Directory Domain Services como um serviço compartilhado que é consumido por várias cargas de trabalho para reduzir os custos. Para mais informações, confira Preços do Active Directory Domain Services.

Serviços de Federação do Azure AD

Para mais informações sobre as edições oferecidas pelo Azure Active Directory, consulte Preços do Azure AD. O recurso de Serviços de Federação do AD está disponível em todas as edições.

Excelência operacional

A equipe de DevOps deve estar preparada para executar as seguintes tarefas:

  • Gerencie os servidores de federação, incluindo o gerenciamento do farm do AD FS, o gerenciamento da política de confiança nos servidores de federação e o gerenciamento dos certificados usados pelos serviços de federação.
  • Gerencie os servidores WAP, incluindo o gerenciamento do farm wap e certificados.
  • Gerencie aplicativos Web, incluindo a configuração de partes confiáveis, métodos de autenticação e mapeamentos de declarações.
  • Fazer backup de componentes do AD FS.

Para outras considerações sobre DevOps, consulte DevOps: Estendendo Active Directory Domain Services (AD DS) para o Azure.

Colaboradores

Esse artigo é mantido pela Microsoft. Ele foi escrito originalmente pelos colaboradores a seguir.

Autor principal:

Para ver perfis não públicos do LinkedIn, entre no LinkedIn.

Próximas etapas