Noções básicas sobre conectores de Proxy de Aplicativo Azure ADUnderstand Azure AD Application Proxy connectors

Os conectores são o que torna o Proxy de Aplicativo Azure AD possível.Connectors are what make Azure AD Application Proxy possible. Eles são simples, fáceis de implantar e manter, além de superpotentes.They're simple, easy to deploy and maintain, and super powerful. Este artigo aborda o que são conectores, como eles funcionam e algumas sugestões sobre como otimizar sua implantação.This article discusses what connectors are, how they work, and some suggestions for how to optimize your deployment.

O que é um conector do Proxy de Aplicativo?What is an Application Proxy connector?

Conectores são agentes leves que ficam no local e facilitam a conexão de saída para o serviço Proxy de Aplicativo.Connectors are lightweight agents that sit on-premises and facilitate the outbound connection to the Application Proxy service. Os conectores devem ser instalados em um servidor Windows que tenha acesso ao aplicativo de back-end.Connectors must be installed on a Windows Server that has access to the backend application. Você pode organizar os conectores em grupos de conector, com cada grupo tratando o tráfego de aplicativos específicos.You can organize connectors into connector groups, with each group handling traffic to specific applications.

Requisitos e implantaçãoRequirements and deployment

Para implantar o Proxy de Aplicativo com êxito, você precisa de pelo menos um conector, mas recomendamos dois ou mais para uma maior capacidade de recuperação.To deploy Application Proxy successfully, you need at least one connector, but we recommend two or more for greater resiliency. Instalar o conector em um computador executando o Windows Server 2012 R2 ou posterior.Install the connector on a machine running Windows Server 2012 R2 or later. O conector precisa se comunicar com o serviço Proxy de Aplicativo e com os aplicativos locais que você publicar.The connector needs to communicate with the Application Proxy service and the on-premises applications that you publish.

Windows ServerWindows server

Você precisa de um servidor executando o Windows Server 2012 R2 ou posterior no qual possa instalar o conector do Proxy de Aplicativo.You need a server running Windows Server 2012 R2 or later on which you can install the Application Proxy connector. O servidor precisa se conectar aos serviços de Proxy de Aplicativo no Azure e aos aplicativos locais que você está publicando.The server needs to connect to the Application Proxy services in Azure, and the on-premises applications that you're publishing.

O servidor do Windows precisa ter o TLS 1.2 ativado antes de instalar o conector do Proxy de Aplicativo.The windows server needs to have TLS 1.2 enabled before you install the Application Proxy connector. Para habilitar o TLS 1.2 no servidor:To enable TLS 1.2 on the server:

  1. Defina as seguintes chaves do registro:Set the following registry keys:

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2]
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client] "DisabledByDefault"=dword:00000000 "Enabled"=dword:00000001
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server] "DisabledByDefault"=dword:00000000 "Enabled"=dword:00000001
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319] "SchUseStrongCrypto"=dword:00000001
    
  2. Reinicie o servidorRestart the server

Para saber mais sobre os requisitos de rede para o servidor de conector, confira Introdução ao Proxy de Aplicativo e instalar um conector.For more information about the network requirements for the connector server, see Get started with Application Proxy and install a connector.

ManutençãoMaintenance

Os conectores e o serviço cuidam de todas as tarefas de alta disponibilidade.The connectors and the service take care of all the high availability tasks. Eles podem ser adicionados ou removidos dinamicamente.They can be added or removed dynamically. Sempre que uma nova solicitação chega, ela é roteada para um dos conectores que está disponível no momento.Each time a new request arrives it is routed to one of the connectors that is currently available. Se um conector estiver temporariamente indisponível, ele não responderá a esse tráfego.If a connector is temporarily not available, it doesn't respond to this traffic.

Os conectores são sem estado e não têm nenhum dado de configuração no computador.The connectors are stateless and have no configuration data on the machine. Os únicos dados que eles armazenam são as configurações para conectar o serviço e seu certificado de autenticação.The only data they store is the settings for connecting the service and its authentication certificate. Quando se conectam ao serviço, eles extraem todos os dados de configuração necessários e os atualizam a cada dois minutos.When they connect to the service, they pull all the required configuration data and refresh it every couple of minutes.

Os conectores também sondam o servidor para descobrir se há uma versão mais recente do conector.Connectors also poll the server to find out whether there is a newer version of the connector. Se for encontrada, os próprios conectores se atualizam.If one is found, the connectors update themselves.

É possível monitorar os conectores no computador em que eles estão em execução, usando o log de eventos e os contadores de desempenho.You can monitor your connectors from the machine they are running on, using either the event log and performance counters. Ou você pode exibir o status da página do Proxy de Aplicativo do portal do Azure:Or you can view their status from the Application Proxy page of the Azure portal:

Exemplo: Conectores de Proxy de aplicativo do AD do Azure

Não é necessário excluir manualmente os conectores que não foram utilizados.You don't have to manually delete connectors that are unused. Quando um conector está em execução, ele permanece ativo, pois se conecta ao serviço.When a connector is running, it remains active as it connects to the service. Os conectores não utilizados são marcados como inativos e são removidos depois de 10 dias de inatividade.Unused connectors are tagged as inactive and are removed after 10 days of inactivity. No entanto, se você quiser desinstalar um conector, desinstale o serviço Conector e o serviço Atualizador do servidor.If you do want to uninstall a connector, though, uninstall both the Connector service and the Updater service from the server. Reinicie o computador para remover completamente o serviço.Restart your computer to fully remove the service.

Atualizações automáticasAutomatic updates

O Azure AD fornece atualizações automáticas para todos conectores que você implanta.Azure AD provides automatic updates for all the connectors that you deploy. Desde que o serviço Atualizador do Conector de Proxy de Aplicativo esteja em execução, os conectores são atualizados automaticamente.As long as the Application Proxy Connector Updater service is running, your connectors update automatically. Caso você não veja o serviço Atualizador do Conector no servidor, precisará reinstalar o conector para obter todas as atualizações.If you don’t see the Connector Updater service on your server, you need to reinstall your connector to get any updates.

Se você não quiser aguardar uma atualização automática chegar ao seu conector, você poderá fazer uma atualização manual.If you don't want to wait for an automatic update to come to your connector, you can do a manual upgrade. Vá para o página de download do conector no servidor em que o conector está localizado e selecione Baixar.Go to the connector download page on the server where your connector is located and select Download. Esse processo inicia uma atualização do conector local.This process kicks off an upgrade for the local connector.

Para locatários com vários conectores, as atualizações automáticas destinam-se a um conector de cada vez em cada grupo para evitar tempo de inatividade em seu ambiente.For tenants with multiple connectors, the automatic updates target one connector at a time in each group to prevent downtime in your environment.

Poderá ocorrer tempo de inatividade quando o conector for atualizado se:You may experience downtime when your connector updates if:

  • você possui somente um conector, recomendamos que instale um segundo conector e crie um grupo de conectores.You only have one connector we recommend you install a second connector and create a connector group. Isso evitará tempo de inatividade e oferece maior disponibilidade.This will avoid downtime and provide higher availability.
  • Um conector estava no meio de uma transação quando a atualização foi iniciada.A connector was in the middle of a transaction when the update began. Embora a transação inicial seja perdida, o navegador deverá repetir a operação automaticamente ou você poderá atualizar a página.Although the initial transaction is lost, your browser should automatically retry the operation or you can refresh your page. Quando a solicitação é enviada novamente, o tráfego é direcionado para um conector de backup.When the request is resent, the traffic is routed to a backup connector.

Para obter informações sobre as versões lançadas anteriormente e quais alterações elas incluem, confira Proxy de Aplicativo – histórico de lançamento de versão.To see information about previously released versions and what changes they include, see Application Proxy- Version Release History.

Criando grupos de conectorCreating connector groups

Os grupos de conectores permitem atribuir conectores específicos para atender a aplicativos específicos.Connector groups enable you to assign specific connectors to serve specific applications. Você pode agrupar um número de conectores e, em seguida, atribuir cada aplicativo a um grupo.You can group a number of connectors together, and then assign each application to a group.

Os grupos de conectores facilitam o gerenciamento de grandes implantações.Connector groups make it easier to manage large deployments. Eles também melhoram a latência para locatários que têm aplicativos hospedados em regiões diferentes, pois você pode criar grupos com base no local de conector para servir apenas aos aplicativos locais.They also improve latency for tenants that have applications hosted in different regions, because you can create location-based connector groups to serve only local applications.

Para saber mais sobre os grupos de conectores, confira Publicar aplicativos em redes e locais separados usando grupos de conector.To learn more about connector groups, see Publish applications on separate networks and locations using connector groups.

planejamento de capacidadeCapacity planning

É importante você confirmar se planejou capacidade suficiente entre os conectores para lidar com o volume de tráfego esperado.It is important to make sure you have planned enough capacity between connectors to handle the expected traffic volume. É recomendável que cada grupo de conectores tem pelo menos dois conectores para fornecer alta disponibilidade e escala.We recommend that each connector group has at least two connectors to provide high availability and scale. É ideal ter três conectores no caso de você precisará de uma máquina em qualquer ponto de serviço.Having three connectors is optimal in case you may need to service a machine at any point.

Em geral, quanto mais usuários você tiver, maior será o computador necessário.In general, the more users you have, the larger a machine you'll need. Abaixo está uma tabela fornecendo uma estrutura de tópicos do volume e latência prevista máquinas diferentes podem manipular.Below is a table giving an outline of the volume and expected latency different machines can handle. Observe que isso é baseado em Transações por Segundo (TPS) esperadas e não em usuário, já que os padrões de uso variam e não podem ser usados para prever a carga.Note it is all based on expected Transactions Per Second (TPS) rather than by user since usage patterns vary and can't be used to predict load. Haverá também algumas diferenças com base no tamanho das respostas e no tempo de resposta do aplicativo de back-end. Tamanhos de resposta maiores e tempos de resposta mais lentos resultarão em uma menor TPS máxima.There will also be some differences based on the size of the responses and the backend application response time - larger response sizes and slower response times will result in a lower Max TPS. Também recomendamos ter máquinas adicionais para que a carga distribuída entre as máquinas sempre fornece buffer suficiente.We also recommend having additional machines so that the distributed load across the machines always provides ample buffer. A capacidade extra garantirá que você tenha alta disponibilidade e resiliência.The extra capacity will ensure that you have high availability and resiliency.

NúcleosCores RAMRAM Latência esperada (MS)-P99Expected Latency (MS)-P99 TPS máximoMax TPS
22 88 325325 586586
44 1616 320320 11501150
88 3232 270270 11901190
1616 6464 245245 1200*1200*

* Esta máquina usado uma configuração personalizada para gerar alguns dos limites de conexão padrão além do .NET, as configurações recomendadas.* This machine used a custom setting to raise some of the default connection limits beyond .NET recommended settings. Recomendamos a execução de um teste com as configurações padrão antes de contatar o suporte para alterar esse limite para o seu locatário.We recommend running a test with the default settings before contacting support to get this limit changed for your tenant.

Observação

Não há muita diferença no TPS máximo entre computadores de 4, 8 e 16 núcleos.There is not much difference in the maximum TPS between 4, 8, and 16 core machines. A principal diferença entre eles é a latência prevista.The main difference between those is in the expected latency.

Rede e segurançaSecurity and networking

Os conectores podem ser instalados em qualquer lugar na rede que permite que eles enviem solicitações para o serviço de Proxy de aplicativo.Connectors can be installed anywhere on the network that allows them to send requests to the Application Proxy service. O importante é que o computador que executa o conector também tenha acesso aos aplicativos.What's important is that the computer running the connector also has access to your apps. Você pode instalar conectores dentro de sua rede corporativa ou em uma máquina virtual que é executada na nuvem.You can install connectors inside of your corporate network or on a virtual machine that runs in the cloud. Os conectores podem ser executados em uma rede de perímetro, também conhecida como uma DMZ (zona desmilitarizada), mas não é necessário porque todo o tráfego é de saída para que sua rede fica segura.Connectors can run within a perimeter network, also known as a demilitarized zone (DMZ), but it's not necessary because all traffic is outbound so your network stays secure.

Os conectores só enviam solicitações de saída.Connectors only send outbound requests. O tráfego de saída é enviado ao serviço de Proxy de Aplicativo e aos aplicativos publicados.The outbound traffic is sent to the Application Proxy service and to the published applications. Você não precisa abrir portas de entrada porque o tráfego flui nos dois sentidos quando uma sessão é estabelecida.You don't have to open inbound ports because traffic flows both ways once a session is established. Você também não precisa configurar o acesso de entrada por meio de firewalls.You also don't have to configure inbound access through your firewalls.

Para saber mais sobre como configurar regras de firewall de saída, confira Trabalhar com servidores proxy locais existentes.For more information about configuring outbound firewall rules, see Work with existing on-premises proxy servers.

Desempenho e escalaPerformance and scalability

A escala para o serviço Proxy de Aplicativo é transparente, mas a escala é uma questão para conectores.Scale for the Application Proxy service is transparent, but scale is a factor for connectors. Você precisa ter conectores suficientes para tratar do pico de tráfego.You need to have enough connectors to handle peak traffic. Como os conectores não têm estado, eles não são afetados pelo número de usuários ou sessões.Since connectors are stateless, they aren't affected by the number of users or sessions. Em vez disso, eles respondem ao número de solicitações e a seu tamanho do conteúdo.Instead, they respond to the number of requests and their payload size. Com o tráfego padrão da Web, um computador médio pode manipular milhares de solicitações por segundo.With standard web traffic, an average machine can handle a couple thousand requests per second. A capacidade específica depende das características exatas do computador.The specific capacity depends on the exact machine characteristics.

O desempenho do conector está vinculado à CPU e rede.The connector performance is bound by CPU and networking. O desempenho da CPU é necessário para criptografia e descriptografia SSL, enquanto a rede é importante para obter conectividade rápida com os aplicativos e com o serviço online no Azure.CPU performance is needed for SSL encryption and decryption, while networking is important to get fast connectivity to the applications and the online service in Azure.

Por outro lado, a memória é uma questão menos significativa para os conectores.In contrast, memory is less of an issue for connectors. O serviço online cuida de grande parte do processamento e de todo o tráfego não autenticado.The online service takes care of much of the processing and all unauthenticated traffic. Tudo o que pode ser feito na nuvem é feito na nuvem.Everything that can be done in the cloud is done in the cloud.

Se por algum motivo aquele conector ou computador ficar indisponível, o tráfego começará a ir para outro conector no grupo.If for any reason that connector or machine becomes unavailable, the traffic will start going to another connector in the group. Essa resiliência também é o motivo para recomendarmos ter vários conectores.This resiliency is also why we recommend having multiple connectors.

Outro fator que afeta o desempenho é a qualidade da rede entre os conectores, incluindo:Another factor that affects performance is the quality of the networking between the connectors, including:

  • O serviço online: Conexões lentas ou de alta latência para o serviço Proxy de Aplicativo no Azure influenciam o desempenho do conector.The online service: Slow or high-latency connections to the Application Proxy service in Azure influence the connector performance. Para obter o melhor desempenho, conecte sua organização ao Azure com o ExpressRoute.For the best performance, connect your organization to Azure with Express Route. Caso contrário, faça com que a equipe de rede garanta que as conexões com o Azure são tratadas da maneira mais eficiente possível.Otherwise, have your networking team ensure that connections to Azure are handled as efficiently as possible.
  • Os aplicativos de back-end: Em alguns casos, há outros proxies entre o conector e os aplicativos de back-end que podem retardar ou impedir as conexões.The backend applications: In some cases, there are additional proxies between the connector and the backend applications that can slow or prevent connections. Para solucionar problemas nesse cenário, abra um navegador no servidor de conector e tente acessar o aplicativo.To troubleshoot this scenario, open a browser from the connector server and try to access the application. Se você executar os conectores no Azure, mas os aplicativos forem locais, a experiência poderá não ocorrer como esperado pelos usuários.If you run the connectors in Azure but the applications are on-premises, the experience might not be what your users expect.
  • Os controladores de domínio: Se os conectores executarem logon único (SSO) usando a Delegação Restrita de Kerberos, eles contatarão os controladores de domínio antes de enviarem a solicitação ao back-end.The domain controllers: If the connectors perform single sign-on (SSO) using Kerberos Constrained Delegation, they contact the domain controllers before sending the request to the backend. Os conectores têm um cache de tíquetes Kerberos, mas em um ambiente ocupado, a capacidade de resposta dos controladores de domínio pode afetar o desempenho.The connectors have a cache of Kerberos tickets, but in a busy environment the responsiveness of the domain controllers can affect performance. Esse problema é mais comum em conectores executados no Azure, mas que se comunicam com os controladores de domínio locais.This issue is more common for connectors that run in Azure but communicate with domain controllers that are on-premises.

Para saber mais sobre como otimizar sua rede, confira Considerações sobre a topologia de rede ao usar o Proxy de Aplicativo do Azure Active Directory.For more information about optimizing your network, see Network topology considerations when using Azure Active Directory Application Proxy.

Ingresso no domínioDomain joining

Os conectores podem ser executados em um computador que não foi ingressado no domínio.Connectors can run on a machine that is not domain-joined. Entretanto, se você desejar efetuar SSO (logon único) em aplicativos que usam a IWA (Autenticação Integrada do Windows), precisará de um computador ingressado no domínio.However, if you want single sign-on (SSO) to applications that use Integrated Windows Authentication (IWA), you need a domain-joined machine. Nesse caso, os computadores do conector devem ser adicionados a um domínio que possa executar a Delegação Restrita de Kerberos em nome dos usuários para os aplicativos publicados.In this case, the connector machines must be joined to a domain that can perform Kerberos Constrained Delegation on behalf of the users for the published applications.

Os conectores também podem ser ingressados em domínios ou florestas que têm uma relação de confiança parcial ou em controladores de domínio somente leitura.Connectors can also be joined to domains or forests that have a partial trust, or to read-only domain controllers.

Implantações de conector em ambientes protegidosConnector deployments on hardened environments

Normalmente, a implantação do conector é simples e não exige nenhuma configuração especial.Usually, connector deployment is straightforward and requires no special configuration. No entanto, há algumas condições exclusivas que devem ser consideradas:However, there are some unique conditions that should be considered:

  • As organizações que limitam o tráfego de saída devem abrir as portas necessárias.Organizations that limit the outbound traffic must open required ports.
  • Os computadores em conformidade com FIPS podem precisar alterar sua configuração para permitir que os processos do conector gerem e armazenem um certificado.FIPS-compliant machines might be required to change their configuration to allow the connector processes to generate and store a certificate.
  • As organizações que bloqueiam o ambiente de acordo com os processos que emitem as solicitações de rede precisam ter certeza de que os serviços do conector estão habilitados para acessar todas as portas e IPs necessários.Organizations that lock down their environment based on the processes that issue the networking requests have to make sure that both connector services are enabled to access all required ports and IPs.
  • Em alguns casos, os proxies de encaminhamento de saída podem interromper a autenticação de certificado bidirecional e causar falha na comunicação.In some cases, outbound forward proxies may break the two-way certificate authentication and cause the communication to fail.

Autenticação do conectorConnector authentication

Para fornecer um serviço seguro, os conectores devem fazer a autenticação no serviço e o serviço deve fazer a autenticação no conector.To provide a secure service, connectors have to authenticate toward the service, and the service has to authenticate toward the connector. Essa autenticação é feita usando certificados de cliente e servidor quando os conectores iniciam a conexão.This authentication is done using client and server certificates when the connectors initiate the connection. Dessa forma, o nome de usuário e a senha do administrador não são armazenados no computador do conector.This way the administrator’s username and password are not stored on the connector machine.

Os certificados usados são específicos ao serviço de Proxy de Aplicativo.The certificates used are specific to the Application Proxy service. Eles são criados durante o registro inicial e renovados automaticamente pelos conectores no intervalo de alguns meses.They get created during the initial registration and are automatically renewed by the connectors every couple of months.

Se um conector não estiver conectado ao serviço por vários meses, seus certificados poderão estar desatualizados.If a connector is not connected to the service for several months, its certificates may be outdated. Nesse caso, desinstale e reinstale o conector para disparar o registro.In this case, uninstall and reinstall the connector to trigger registration. É possível executar os seguintes comandos do PowerShell:You can run the following PowerShell commands:

Import-module AppProxyPSModule
Register-AppProxyConnector

Nos bastidoresUnder the hood

Os conectores baseiam-se no Proxy de Aplicativo Web do Windows Server e, portanto, têm a maioria das mesmas ferramentas de gerenciamento, incluindo os Logs de Eventos do WindowsConnectors are based on Windows Server Web Application Proxy, so they have most of the same management tools including Windows Event Logs

Gerenciar logs de eventos com o Visualizador de Eventos

e contadores de desempenho do Windows.and Windows performance counters.

Adicionar contadores ao conector com o Monitor de Desempenho

Os conectores têm logs de administrador e sessão.The connectors have both admin and session logs. Os logs de administrador incluem eventos de chave e seus erros.The admin logs include key events and their errors. Os logs de sessão incluem todas as transações e seus detalhes de processamento.The session logs include all the transactions and their processing details.

Para ver os logs, acesse o Visualizador de Eventos, abra o menu Exibir e habilite Mostrar logs analíticos e de depuração.To see the logs, go to the Event Viewer, open the View menu, and enable Show analytic and debug logs. Em seguida, habilite-os para iniciar a coleta de eventos.Then, enable them to start collecting events. Esses logs não aparecem no Proxy de Aplicativo Web no Windows Server 2012 R2, pois os conectores são baseados em uma versão mais recente.These logs do not appear in Web Application Proxy in Windows Server 2012 R2, as the connectors are based on a more recent version.

Você pode examinar o estado do serviço na janela Serviços.You can examine the state of the service in the Services window. O conector é composto por dois Serviços do Windows: o conector real e o atualizador.The connector is made up of two Windows Services: the actual connector, and the updater. Ambos devem ser executados o tempo todo.Both of them must run all the time.

Exemplo: Janela Serviços mostrando os serviços do Azure AD local

Próximas etapasNext steps