ArcGIS Server можно защитить, регламентируя доступ с помощью пользователей и ролей из пользовательского хранилища аутентификаций.
Примечание:
Пользовательские хранилища учетных записей не будут поддерживаться после цикла релизов 10.7.x. С рекомендованными настройками безопасности можно ознакомиться в разделе Управление доступом в ArcGIS Server.
Для этого ArcGIS Server предоставляет интерфейс Java, который может быть расширен для определения функций управления пользователями и ролями. Благодаря этой возможности любое пользовательское хранилище удостоверений, доступное через Java, может использоваться для настройки безопасности ArcGIS Server. Например, систему реляционной базы данных можно использовать в качестве пользовательского хранилища удостоверений через API JDBC (Java Database Connectivity) этой базы данных.
Основные шаги по настройке пользовательского хранилища аутентификаций с помощью Java приведены далее:
- Настройте среду разработки Java.
- Реализуйте хранилище удостоверений в Java.
- Разверните пользовательское хранилище удостоверений на ArcGIS Server.
- Настройте ArcGIS Server на работу с пользовательским хранилищем удостоверений.
Настройка среды разработки Java
- Установите ArcGIS Server на вашей среде разработки.
- Создайте проект Java в IDE Java на ваш выбор.
- Добавьте следующие библиотеки Java к пути сборки проекта:
- <директория установки ArcGIS for Server>/framework/lib/server/arcgis-admin.jar
- <директория установки ArcGIS Server>/framework/lib/server/arcgis-common.jar
- Создайте класс Java, который реализует следующие интерфейсы:
- com.esri.arcgis.discovery.admin.security.UserStore
- com.esri.arcgis.discovery.admin.security.RoleStore
Примечание:
С документацией Java можно ознакомиться здесь: <ArcGIS Server installation directory>/help/samples/java/javadoc/index.html.
Реализация хранилища удостоверений в Java
Реализуйте методы интерфейсов UserStore и RoleStore. См. <ArcGIS Server installation directory>/help/samples/java/CustomFileStore/, чтобы ознакомиться с примером реализации.
Разверните пользовательское хранилище удостоверений на ArcGIS Server
- Привяжите реализацию пользовательского хранилища удостоверений к файлу .jar.
- Остановите процесс ArcGIS Server.
- Разверните файл пользовательского хранилища удостоверений .jar и любые другие дополнительные библиотеки Java в папку <ArcGIS Server installation directory>/framework/lib/server/.
- Запустите процесс ArcGIS Server.
Настройте ArcGIS Server на работу с пользовательским хранилищем удостоверений
- Откройте ArcGIS Server Administrator Directory и войдите в систему.
- Щелкните security > config > updateIdentityStore.
- Введите конфигурацию Хранилище учетных записей в формате JSON. Синтаксис выглядит так:
{ "type": "JAVA", "class": "Fully qualified Java User Store class name", "properties": { "Property One": "value", .... "Property X": "value" } }
Потребуются параметры типа и класса. Индивидуальные свойства хранилища являются необязательными и зависят от реализации пользовательского хранилища удостоверений. Например, если требуемые параметры жестко прописаны в реализации, вам не нужно указывать какие-либо свойства:
{ "type": "JAVA", "class": "Fully qualified Java User Store class name", "properties": {} }
- Введите конфигурацию Хранилище ролей в формате JSON. Синтаксис выглядит так:
{ "type": "JAVA", "class": "Fully qualified Java Role Store class name", "properties": { "Property One": "value", .... "Property X": "value" } }
- Щелкните обновить, чтобы сохранить конфигурацию.