Considerações de segurança para acessar aplicativos remotamente com o proxy de aplicativo do Microsoft Entra

Este artigo explica os componentes que funcionam para manter usuários e aplicativos seguros quando você usa o proxy de aplicativo do Microsoft Entra.

O diagrama a seguir mostra como o Microsoft Entra ID possibilita um acesso remoto seguro aos aplicativos locais.

Diagrama de acesso remoto seguro por meio do proxy de aplicativo do Microsoft Entra

Benefícios de segurança

O proxy de aplicativo do Microsoft Entra oferece muitos benefícios de segurança. A lista dos benefícios é a seguinte:

  • Acesso autenticado
  • Acesso condicional
  • Encerramento de tráfego
  • Todo o acesso é de saída
  • Machine learning e análise de dados em escala de nuvem
  • Acesso remoto como serviço
  • Serviço de proteção da Microsoft contra Negação de Serviço Distribuída (DDoS)

Acesso autenticado

Somente conexões autenticadas podem acessar sua rede quando você usa a pré-autenticação do Microsoft Entra.

O proxy de aplicativo do Microsoft Entra depende do STS (serviço de token de segurança) do Microsoft Entra para toda autenticação. A pré-autenticação, por sua própria natureza, bloqueia um número significativo de ataques anônimos porque apenas identidades autenticadas podem acessar o aplicativo de back-end.

Se você escolher Passagem como seu método de pré-autenticação, não terá esse benefício.

Acesso Condicional

Aplique controles de política mais rígidos antes que as conexões com sua rede sejam estabelecidas.

Com o Acesso Condicional, você pode definir restrições de como os usuários tem permissão para acessar nos seus aplicativos. É possível criar políticas que restrinjam entradas com base no local, na força da autenticação e no perfil de risco do usuário.

Você também pode usar o Acesso Condicional para configurar políticas de autenticação multifator, adicionando outra camada de segurança às suas autenticações de usuário. Além disso, seus aplicativos também podem ser roteados para Aplicativos do Microsoft Defender para Nuvem por meio do Acesso Condicional do Microsoft Entra para fornecer controles e monitoramento em tempo real por meio de políticas de acesso e sessão.

Encerramento de tráfego

Todo o tráfego é encerrado na nuvem.

Como o proxy de aplicativo do Microsoft Entra é um proxy reverso, todo o tráfego para os aplicativos de back-end é encerrado no serviço. A sessão pode ser restabelecida apenas com o servidor de back-end, o que significa que seus servidores de back-end não são expostos ao tráfego HTTP direto. Essa configuração significa que você ficará mais bem protegido contra ataques direcionados.

Todo o acesso é de saída

Não é necessário abrir as conexões de entrada para a rede corporativa.

Os conectores de rede privada usam apenas conexões de saída para o serviço de proxy de aplicativo do Microsoft Entra. Não há necessidade de abrir portas de firewall para conexões de entrada. Os proxies tradicionais requerem uma rede de perímetro (também conhecida como DMZ, zona desmilitarizada ou sub-rede filtrada) e permitem acesso a conexões não autenticadas na borda da rede. Com o proxy de aplicativo, você não precisa de uma rede de perímetro porque todas as conexões são de saída e ocorrem por meio de um canal seguro.

Para obter mais informações sobre conectores, consulte Noções básicas sobre conectores de rede privada do Microsoft Entra.

Machine learning e análise em escala de nuvem

Obtenha proteção de segurança de ponta.

Por fazer parte do Microsoft Entra ID, o proxy de aplicativo usa a Proteção do Microsoft Entra ID, com dados do Microsoft Security Response Center e da Unidade de Crimes Digitais. Juntos, identificamos proativamente contas comprometidas e oferecemos proteção em conexões de alto risco. Podemos levar em consideração vários fatores para determinar quais tentativas de entrada são de alto risco. Esses fatores incluem a sinalização de dispositivos infectados, anonimização de redes e locais atípicas ou improváveis.

Muitos desses relatórios e eventos já estão disponíveis por meio de uma API para integração com as informações de segurança e sistemas de gerenciamento (SIEM) do evento.

Acesso remoto como serviço

Você não precisa se preocupar com a manutenção e a aplicação de patches em servidores locais.

A não aplicação de patches no software ainda é responsável por um grande número de ataques. O proxy de aplicativo do Microsoft Entra é um serviço em escala de Internet da Microsoft. Sendo assim, você sempre obterá os patches e as atualizações de segurança mais recentes.

Para aprimorar a segurança dos aplicativos publicados pelo proxy de aplicativo do Microsoft Entra, nós impedimos que robôs do rastreador da Web indexem e arquivem seus aplicativos. A cada vez que um robô rastreador da web tenta recuperar as configurações do robô para um aplicativo publicado, o proxy de aplicativo responde com um arquivo robots.txt que inclui User-agent: * Disallow: /.

Serviço de proteção da Microsoft contra Negação de Serviço Distribuída (DDoS)

Os aplicativos publicados por meio do proxy de aplicativo são protegidos contra ataques de Negação de Serviço Distribuída (DDoS). A Microsoft habilita essa proteção automaticamente em todos os data centers. O serviço de proteção contra DDoS da Microsoft fornece um monitoramento de tráfego always-on e mitigação de ataques comuns no nível de rede em tempo real.

Nos bastidores

O proxy de aplicativo do Microsoft Entra consiste em duas partes:

  • Serviço baseado em nuvem: esse serviço é executado na nuvem da Microsoft, que é onde as conexões de cliente/usuário externo são feitas.
  • O conector local: componente local, o conector escuta solicitações do serviço do proxy de aplicativo do Microsoft Entra e cuida das conexões com os aplicativos internos.

Um fluxo entre o conector e o serviço de proxy de aplicativo é estabelecido quando:

  • O conector é configurado pela primeira vez.
  • O conector extrai informações de configuração do serviço de proxy de aplicativo.
  • Um usuário acessa um aplicativo publicado.

Observação

Todas as comunicações ocorrem por TLS e sempre se originam no conector do serviço de proxy de aplicativo. O serviço é apenas de saída.

O conector usa um certificado de cliente para se autenticar no serviço de proxy de aplicativo para quase todas as chamadas. A única exceção deste processo é a etapa de configuração inicial em que o certificado de cliente é estabelecido.

Instalação do conector

Quando o conector é configurado pela primeira vez, ocorrem os seguintes eventos de fluxo:

  1. O registro do conector para o serviço ocorre como parte da instalação do conector. Os usuários são solicitados a digitar as credenciais de administrador do Microsoft Entra. O token adquirido dessa autenticação é então apresentado ao serviço de proxy de aplicativo do Microsoft Entra.
  2. O serviço de proxy de aplicativo avalia o token. Ele verifica se o usuário é um administrador global no locatário. Se o usuário não for um administrador, o processo é encerrado.
  3. O conector gera uma solicitação de certificado de cliente e a repassa, juntamente com o token, para o serviço de proxy de aplicativo. O serviço, por sua vez, verifica o token e faz a solicitação do certificado de cliente.
  4. O conector usa o certificado de cliente para comunicação futura com o serviço de proxy de aplicativo.
  5. O conector realiza uma extração inicial dos dados de configuração do sistema do serviço usando seu certificado de cliente e agora está pronto para receber solicitações.

Atualização das definições da configuração

Sempre que o serviço de proxy de aplicativo atualiza as definições de configuração, ocorrem os seguintes eventos de fluxo:

  1. O conector se conecta ao ponto de extremidade de configuração dentro do serviço de proxy de aplicativo usando seu certificado de cliente.
  2. O certificado do cliente é validado.
  3. O serviço de proxy de aplicativo retorna os dados de configuração para o conector (por exemplo, o grupo de conectores do qual o conector deve fazer parte).
  4. O conector irá gerar uma nova solicitação de certificado se o certificado atual tiver mais de 180 dias.

Acesso a aplicativos publicados

Quando os usuários acessam um aplicativo publicado, os seguintes eventos ocorrem entre o serviço de proxy de aplicativo e o conector de rede privada:

  1. O serviço autentica o usuário para o aplicativo
  2. O serviço faz uma solicitação na fila do conector
  3. Um conector processa a solicitação da fila
  4. O conector aguarda uma resposta
  5. O serviço transmite dados para o usuário

Para saber mais sobre o que acontece em cada uma dessas etapas, continue lendo.

1. O serviço autentica o usuário para o aplicativo

Se o aplicativo usar uma passagem como seu método de pré-autenticação, as etapas incluídas nesta seção serão ignoradas.

Os usuários serão redirecionados para o STS do Microsoft Entra para se autenticar se o aplicativo estiver configurado para pré-autenticar com o Microsoft Entra ID. As seguintes etapas ocorrem:

  1. O proxy de aplicativo verifica os requisitos da política de Acesso Condicional. Essa etapa garante que o usuário seja atribuído ao aplicativo. Se uma verificação em duas etapas for necessária, a sequência de autenticação solicitará ao usuário um segundo método de autenticação.
  2. O STS do Microsoft Entra emite um token assinado para o aplicativo e redireciona o usuário de volta ao serviço de proxy de aplicativo.
  3. O proxy de aplicativo verifica se o token foi emitido para o aplicativo correto, se está assinado e se é válido.
  4. O proxy de aplicativo configura um cookie de autenticação criptografado para indicar ao aplicativo que a autenticação foi bem-sucedida. O cookie inclui um carimbo de data/hora para a expiração com base no token do Microsoft Entra ID. O cookie também inclui o nome de usuário no qual a autenticação se baseia. O cookie é criptografado com uma chave privada da qual somente o serviço de proxy de aplicativo tem conhecimento.
  5. O proxy de aplicativo redireciona o usuário de volta para a URL solicitada originalmente.

Se uma das partes das etapas da pré-autenticação falhar, a solicitação do usuário será negada e o usuário verá uma mensagem indicando a origem do problema.

2. O serviço faz uma solicitação na fila do conector

Os conectores mantêm uma conexão de saída aberta para o serviço de proxy de aplicativo. Quando uma solicitação chega, o serviço enfileira a solicitação em uma das conexões abertas para escolha do conector.

A solicitação inclui cabeçalhos de solicitação, dados do cookie criptografado, o usuário que está fazendo a solicitação e a ID da solicitação. Embora os dados do cookie criptografado sejam enviados com a solicitação, o cookie de autenticação propriamente dito não é.

3. O conector processa a solicitação da fila.

Com base na solicitação, o proxy de aplicativo executa uma das seguintes ações:

  • Se a solicitação for uma operação simples (por exemplo, não há dados no corpo como em uma solicitação GET de API RESTful), o conector faz uma conexão com o recurso interno de destino e aguarda uma resposta.

  • Se a solicitação tiver dados associados a ela no corpo, por exemplo, uma operação POST da API RESTful, o conector fará uma conexão de saída usando o certificado de cliente com a instância do proxy de aplicativo. Ele faz essa conexão para solicitar os dados e abrir uma conexão com o recurso interno. Após receber a solicitação do conector, o serviço de proxy de aplicativo começa a aceitar conteúdo do usuário e encaminha dados para o conector. O conector, por sua vez, encaminha os dados para o recurso interno.

4. O conector aguarda uma resposta.

Depois de concluída a solicitação/transmissão de todo o conteúdo ao back-end, o conector espera uma resposta.

Após receber a resposta, o conector faz uma conexão de saída com o serviço de proxy de aplicativo para retornar os detalhes do cabeçalho e começa a transmitir os dados de retorno.

5. O serviço transmite dados para o usuário. 

Uma parte do processamento do aplicativo ocorre nesse momento. Por exemplo, o proxy de aplicativo converte cabeçalhos ou URLs.

Próximas etapas