Когда сервисы ArcGIS Server защищены с помощью авторизации на основе токена, клиентское программное обеспечение должно иметь возможность получать и использовать токен. Клиентские приложения Esri, такие как ArcGIS Pro, автоматически выполняют процедуру получения токенов от сервиса токенов и предоставления этих токенов защищенному веб-сервису ArcGIS.
При построении пользовательских клиентских приложений ArcGIS, использующих запросы GET для доступа к веб-сервисам, защищенным с помощью аутентификации ArcGIS на основе токенов, рекомендуется отправлять токен в заголовке X-Esri-Authorization, а не как параметр запроса. Это не позволяет промежуточным звеньям сети, таким как прокси, шлюзы или балансировщики нагрузки, получать токен. В примере запроса HTTP GET, приведенном далее, токен отправляется в заголовке X-Esri-Authorization:GET https://arcgis.mydomain.com/arcgis/rest/services/SampleWorldCities/MapServer?f=pjson HTTP/1.1
Host: arcgis.mydomain.com
X-Esri-Authorization: Bearer xMTuPSYpAbj85TVfbZcVU7td8bMBlDKuSVkM3FAx7zO1MYD0zDam1VR3Cm-ZbFo-
Если ArcGIS Server использует аутентификацию ArcGIS Server, а не аутентификацию веб-уровня (IWA, HTTP BASIC, PKI, и т.д.), можно использовать стандартный заголовок авторизации HTTP вместо заголовка X-Esri-Authorization:GET https://arcgis.mydomain.com/arcgis/rest/services/SampleWorldCities/MapServer?f=pjson HTTP/1.1
Host: arcgis.mydomain.com
Authorization: Bearer xMTuPSYpAbj85TVfbZcVU7td8bMBlDKuSVkM3FAx7zO1MYD0zDam1VR3Cm-ZbFo-
Ниже описано поведение клиентов ArcGIS при подключении к веб-сервису ArcGIS, защищенному аутентификацией на базе токена.
- ArcGIS Pro: пользователь указывает имя пользователя и пароль в диалоговом окне подключения. Если имя пользователя или пароль не указаны, или имя пользователя некорректно, программное обеспечение попросит пользователя ввести корректные данные.
- ArcGIS Maps SDK for JavaScript: клиент должен указать токен, чтобы получить доступ к сервису, требующему токен. В большинстве случаев ввести имя пользователя и пароль для сервиса в JavaScript на стороне клиента будет невозможно. Вместо этого можно получить долгосрочный токен от сервера токенов и включить его в страницу на стороне клиента. Затем токен включается в запрос к сервису. Более подробно о получении токена см. в статье Получение токенов ArcGIS. О запросе ресурса с помощью кода см. в справке к соответствующему API.
- Приложения на основе SOAP: приложения, использующие инструментарий SOAP для получения доступа к WSDL веб-сервиса ГИС должны получать и использовать код.