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