Redirecionar links embutidos em código para aplicativos publicados com o proxy de aplicativo do Microsoft Entra

O proxy de aplicativo do Microsoft Entra disponibiliza seus aplicativos locais para usuários remotos ou que usam dispositivos próprios. No entanto, alguns aplicativos foram desenvolvidos com links locais inseridos no HTML. Esses links não funcionam corretamente quando o aplicativo é usado remotamente. Quando você faz com que vários aplicativos locais apontem uns para os outros, os usuários esperam os links para continuar trabalhando quando não estiverem no escritório.

A melhor maneira de garantir que os links funcionem corretamente dentro e fora de sua rede corporativa é configurar as URLs externas de seus aplicativos para que sejam as mesmas que as URLs internas. Use domínios personalizados para configurar suas URLs externas para que tenham o nome de domínio corporativo em vez do domínio padrão do proxy de aplicativo.

Se não for possível usar domínios personalizados no locatário, existem várias outras opções para fornecer essa funcionalidade. Todas essas opções também são compatíveis com domínios personalizados e entre si, assim você pode configurar domínios personalizados e outras soluções, se necessário.

Observação

A conversão de links não tem suporte para URLs internas embutidas em código geradas por meio de JavaScript.

Opção 1: usar o Microsoft Edge – essa solução só será aplicável se você planejar recomendar ou exigir que os usuários acessem o aplicativo com o navegador Microsoft Edge. Ele manipula todos os URLs publicados.

Opção 2: usar a extensão do MyApps – essa solução exige que os usuários instalem uma extensão de navegador do lado do cliente, mas manipula todos os URLs publicados e funciona com navegadores mais populares.

Opção 3: usar a configuração de conversão de link – a opção é uma configuração do lado do administrador que não é visível para os usuários. Porém, ela apenas manipula URLs em HTML e CSS.

Esses três recursos mantêm seus vínculos de trabalho, independentemente de onde os usuários estão. Quando você tem aplicativos que apontam diretamente para portas ou pontos de extremidade internos, pode mapear essas URLs internas para as URLs de proxy de aplicativo externas publicadas.

Observação

A última opção é apenas para locatários que, por qualquer motivo, não podem usar domínios personalizados para ter as mesmas URLs internas e externas para seus aplicativos. Antes de habilitar esse recurso, verifique se os domínios personalizados do proxy de aplicativo do Microsoft Entra podem funcionar para você.

Ou, se o aplicativo que você precisa configurar com a conversão de link é o SharePoint, consulte Configurar mapeamentos alternativos de acesso para o SharePoint 2013 a fim de conhecer outra abordagem de mapeamento de links.

Opção 1: integração do Microsoft Edge

Você pode usar o Microsoft Edge para proteger ainda mais seu aplicativo e conteúdo. Para usar essa solução, você precisa exigir/recomendar que os usuários acessem o aplicativo pelo navegador Microsoft Edge. O Microsoft Edge reconhece todos os URLs internos publicados com o proxy de aplicativo e as redireciona para o URL externo correspondente. O redirecionamento garante que os URLs internos codificados funcionem. Se um usuário acessar o navegador e digitar diretamente o URL interno, ele funciona mesmo se o usuário estiver remoto.

Para saber mais, inclusive como configurar essa opção, consulte a documentação Gerenciar o acesso à web usando o Microsoft Edge para iOS e Android com o Microsoft Intune.

Opção 2: extensão de navegador MyApps

Com a extensão de navegador MyApps, todos os URLs internos publicados com proxy de aplicativo reconhecem a extensão e são redirecionados para o URL externo correspondente. O redirecionamento garante que todos os URLs internos codificados funcionem. Se um usuário acessar a barra de endereços do navegador e digitar diretamente o URL interno, ele funciona mesmo se o usuário estiver remoto.

Para usar esse recurso, o usuário deve fazer o download da extensão e estar conectado. Não há nenhuma outra configuração necessária para os administradores ou usuários.

Para saber mais, incluindo como configurar essa opção, confira a documentação da Extensão do Navegador MyApps.

Observação

A Extensão de Navegador MyApps não dá suporte à conversão de link para URLs curinga.

O serviço de proxy de aplicativo pesquisa através de HTML e o CSS por links internos publicados e converte-os quando a conversão de link está habilitada. A conversão de link fornece uma experiência ininterrupta. É preferível usar a Extensão de Navegador MyApps para a Configuração de Conversão de Link, pois oferece uma experiência mais eficaz.

Observação

Se você estiver usando a opção 2 ou 3, só uma delas deverá ser habilitada por vez.

Depois da autenticação, quando o servidor proxy transmite os dados de aplicativo para o usuário, o proxy de aplicativo examina o aplicativo em relação a links embutidos em código e os substitui pelas respectivas URLs externas publicadas.

O proxy de aplicativo pressupõe que os aplicativos estejam codificados em UTF-8. Se esse não for o caso, especifique o tipo de codificação em um cabeçalho de resposta HTTP, como Content-Type:text/html;charset=utf-8.

O recurso de translação de link procura apenas por links que estão nas marcas de código no corpo do aplicativo. O proxy de aplicativo tem um recurso separado para converter cookies ou URLs em cabeçalhos.

Há dois tipos comuns de links internos em aplicativos locais:

  • Links internos relativos que apontam para um recurso compartilhado em uma estrutura de arquivo local como /claims/claims.html. Esses links funcionam automaticamente em aplicativos publicados por meio do proxy de aplicativo e continuam funcionando com ou sem a conversão de link.
  • Links internos embutidos em código para outros aplicativos locais como http://expenses ou arquivos publicados como http://expenses/logo.jpg. O recurso de conversão de link funciona em links internos embutidos em código e os altera para apontar para as URLs externas de que os usuários remotos precisam para avançar.

A lista completa de atributos em marcas de código HTML aos quais o proxy de aplicativo dá suporte à conversão de links inclui:

  • a (href)
  • audio (src)
  • base (href)
  • button (formaction)
  • div (data-background, style, data-src)
  • embed (src)
  • form (action)
  • frame (src)
  • head (profile)
  • html (manifest)
  • iframe (longdesc, src)
  • img (longdesc, src)
  • input (formaction, src, value)
  • link (href)
  • menuitem (icon)
  • meta (content)
  • object (archive, data, codebase)
  • script (src)
  • source (src)
  • track (src)
  • video (src, poster)

Além disso, em CSS, o atributo URL também é convertido.

A translação de link está habilitada para cada aplicativo, para que você tenha controle sobre a experiência do usuário no nível por aplicativo. Ative a translação de link para um aplicativo quando desejar que os links desse aplicativo sejam convertidos, não os links para ele.

Por exemplo, imagine que você tem três aplicativos publicados por meio do proxy de aplicativo que estão vinculados entre si: Benefícios, Despesas e Viagem. Há um quarto aplicativo, Comentários, que não foi publicado por meio do proxy de aplicativo.

Quando você habilita a conversão de link para o aplicativo Benefícios, os links para Despesas e Viagem são redirecionados para os URLs externos para esses aplicativos. No entanto, o link para Comentários não é redirecionado porque não há URL externo. Os links de Despesas e Viagem para Benefícios não funcionam, pois a conversão de link não foi habilitada para esses dois aplicativos.

Links from Benefits to other apps when link translation is enabled

Para melhorar o desempenho e a segurança, alguns links não são convertidos:

  • Links que não estão dentro de marcas de código.
  • Links que não estão em HTML ou CSS.
  • Links em formato codificado de URL.
  • Links internos abertos de outros programas. Links enviados por email, mensagem instantânea ou incluídos em outros documentos não são convertidos. Os usuários precisam saber ir para a URL externa.

Se você precisar dar suporte a um desses dois cenários, use as mesmas URLs internas e externas em vez da conversão de link.

Começar a trabalhar com a translação de link é tão fácil quanto clicar em um botão:

  1. Entre no centro de administração do Microsoft Entra como, no mínimo, um Administrador de aAplicativos.

  2. Navegue até Identidade>Aplicativos>Aplicativos Empresariais>Todos os aplicativos.

  3. Selecione o aplicativo que você deseja gerenciar.

  4. Mude Converter URLs no corpo do aplicativo para Sim.

    Select Yes to translate URLs in application body

  5. Selecione Salvar para salvar suas alterações.

Agora, quando os usuários acessarem esse aplicativo, o proxy examina para verificar a existência de URLs internas publicadas por meio do proxy de aplicativo no seu locatário.

Próximas etapas