ArcGIS Server 可通过自定义标识存储中的用户和角色获得安全保护。为此,ArcGIS Server 提供了一个可进行扩展以定义用户和角色管理功能的 Java 接口。通过此功能,能够使用 Java 访问的任何自定义标识存储都可用来配置 ArcGIS Server 安全性。例如,通过数据库的 JDBC(Java 数据库连通性)API,关系数据库系统可用作自定义标识存储。
要使用 Java 配置自定义标识存储,请执行以下步骤:
- 设置 Java 开发环境。
- 用 Java 实现标识存储。
- 在 ArcGIS Server 上部署自定义标识存储。
- 配置 ArcGIS Server 以使用自定义标识存储。
设置 Java 开发环境
- 在开发环境中安装 ArcGIS Server。
- 在所选的 Java IDE 中创建新的 Java 项目。
- 在项目的构建路径中添加以下 Java 库:
- <ArcGIS 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 安装目录>/help/samples/java/javadoc/index.html。
用 Java 实现标识存储
实现 UserStore 和 RoleStore 接口的方法。有关实现示例,请参阅 <ArcGIS Server 安装目录>/help/samples/java/CustomFileStore/。
在 ArcGIS Server 上部署自定义标识存储
- 将自定义标识存储实现打包成 .jar 文件。
- 停止 ArcGIS Server 进程。
- 将自定义标识存储 .jar 文件和其他任何附加 java 库部署到 <ArcGIS Server 安装目录>/framework/lib/server/ 文件夹中。
- 启动 ArcGIS Server 进程。
配置 ArcGIS Server 以使用自定义标识存储
- 打开“ArcGIS Server 管理器目录”并登录。
- 单击安全性 > 配置 > 更新标识存储。
- 以 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" } }
- 单击更新保存配置。