Declaração do Problema: <\/STRONG><\/U><\/P>Este é um cenário muito comum que muitos desenvolvedores devem ter considerado. Temos um serviço web GIS seguro que é acessível a usuários limitados dentro do nosso ArcGIS Enterprise. Agora queremos usar esse serviço em uma aplicação construída sobre o ArcGIS JavaScript SDK. Se usarmos esse serviço web GIS diretamente no JavaScript SDK, um popup de login frequentemente será apresentado ao usuário sempre que a aplicação for inicializada. O desafio é que o app deve ser usado sem nenhum login, pois é para um público mais amplo, e o serviço GIS também não pode ser exposto publicamente, pois contém algumas informações sensíveis.<\/P>Queremos uma solução que nos permita usar o serviço GIS seguro na aplicação pública sem prompts de login do ArcGIS Enterprise e o acesso ao serviço também precisa ser restrito para oferecer maior segurança e integridade dos dados.<\/STRONG><\/P>Abordagem:<\/STRONG><\/U><\/P>Após fazer uma pequena pesquisa, encontrei uma solução viável para esse problema trivial por conta própria. A resposta é usar uma PÁGINA PROXY dentro da minha aplicação web personalizada.<\/P>O ArcGIS JavaScript SDK fornece a funcionalidade de configurar proxies do lado do servidor dentro das suas aplicações web através das classes auxiliares. A parte boa é que a funcionalidade das páginas Proxy pode ser aproveitada não apenas em apps personalizados Esri feitos usando SDKs, mas também por várias plataformas Esri Web App Builder como ArcGIS Web App Builder e ArcGIS Experience Builder.<\/P>O Proxy do ArcGIS atuará como um Mensageiro entre os navegadores dos seus clientes e seu servidor web, o que significa que a requisição ao serviço seguro passará por este mensageiro, ou seja, o proxy Esri, que autenticará o serviço em nome do usuário com a ajuda de token embutido ou credenciais que estarão dentro do seu arquivo proxy. Isso garantirá que o app web público acesse o serviço seguro sem solicitar credenciais ao usuário. O proxy também pode ser configurado de forma que apenas domínios na lista branca possam acessar a página proxy, evitando assim acesso anônimo ao proxy e garantindo a integridade dos dados. <\/P>Basta garantir que você coloque a URL do seu serviço web GIS seguro no arquivo proxy.config junto com as credenciais ou token que serão usados pelo seu servidor web para autenticar o serviço em nome dos usuários. A melhor parte é que o proxy pode ser configurado no seu ambiente para vários servidores web como IIS, Apache, Tomcat etc. Portanto, independentemente da linguagem de programação, você pode aproveitar todos os benefícios do proxy Esri usando o ArcGIS JavaScript SDK. Você pode estar trabalhando com .NET, JAVA, PHP, React etc e ainda assim usar o proxy Esri e aproveitar os benefícios que ele oferece.<\/P>Consulte os links e código de exemplo abaixo para entendimento detalhado:<\/P>Documentação<\/U><\/STRONG>: <\/SPAN>https:\/\/developers.arcgis.com\/javascript\/3\/jshelp\/ags_proxy.html<\/A><\/P>Link para Download do Proxy:<\/U><\/STRONG> <\/SPAN>
https:\/\/github.com\/Esri\/resource-proxy\/releases<\/A><\/P>Código de Exemplo:<\/U><\/STRONG> <\/SPAN>Anexado<\/P>