Skip To Content

使用 Java 设置自定义标识存储

ArcGIS Server 可通过自定义标识存储中的用户和角色获得安全保护。为此,ArcGIS Server 提供了一个可进行扩展以定义用户和角色管理功能的 Java 接口。通过此功能,能够使用 Java 访问的任何自定义标识存储都可用来配置 ArcGIS Server 安全性。例如,通过数据库的 JDBC(Java 数据库连通性)API,关系数据库系统可用作自定义标识存储。

要使用 Java 配置自定义标识存储,请执行以下步骤:

  1. 设置 Java 开发环境。
  2. 用 Java 实现标识存储。
  3. 在 ArcGIS Server 上部署自定义标识存储。
  4. 配置 ArcGIS Server 以使用自定义标识存储。

设置 Java 开发环境

  1. 在开发环境中安装 ArcGIS Server。
  2. 在所选的 Java IDE 中创建新的 Java 项目。
  3. 在项目的构建路径中添加以下 Java 库:
    1. <ArcGIS Server 安装目录>/framework/lib/server/arcgis-admin.jar
    2. <ArcGIS Server 安装目录>/framework/lib/server/arcgis-common.jar
  4. 创建实现以下接口的新 Java 类:
    1. com.esri.arcgis.discovery.admin.security.UserStore
    2. 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 上部署自定义标识存储

  1. 将自定义标识存储实现打包成 .jar 文件。
  2. 停止 ArcGIS Server 进程。
  3. 将自定义标识存储 .jar 文件和其他任何附加 java 库部署到 <ArcGIS Server 安装目录>/framework/lib/server/ 文件夹中。
  4. 启动 ArcGIS Server 进程。

配置 ArcGIS Server 以使用自定义标识存储

  1. 打开“ArcGIS Server 管理器目录”并登录。
  2. 单击安全性 > 配置 > 更新标识存储
  3. 以 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": {}
    }

  4. 以 JSON 格式输入角色存储配置。该语法为:

    {
    	"type": "JAVA",
    	"class": "Fully qualified Java Role Store class name",
    	"properties": {
    		"Property One": "value",
       ....
    		"Property X": "value"
    	}
    }

  5. 单击更新保存配置。