扩展安全信息存储方式 |
iServer 默认将安全信息存储在 SQLite 数据库中,并支持 MySQL/Oracle 数据库存储。如果上述的存储方式不能满足需求,您可以基于 iServer 提供的安全信息存储接口(Storage 和 CustomSecurityInfoStorageSetting),来自定义用户信息的存储方式。
本节将以扩展使用json存储安全信息为例,为您介绍安全信息存储扩展的基本流程。
扩展基本流程:
实现自定义的存储方式,例如某个数据库中,或本地文件xml存储,本例将安全信息存储在本地json文件中
实现存储配置类,本例用于指定json存储配置,包括磁盘存储位置等
将扩展代码编译后导出为 JAR 包(参见:Extend_SecirityInfo.jar),并把 JAR 文件复制到【SuperMap iServer 安装目录】/webapps/iserver/WEB-INF/lib文件夹下
在iServer的系统配置文件(【SuperMap iServer 安装目录】\webapps\iserver\WEB-INF\iserver-system.xml)中,配置使用扩展的json存储方式。具体操作:打开系统配置文件,在<management>下的<security>节点中,添加以下配置信息:
<storage class="com.supermap.server.config.JsonStorageSetting"> <type>CUSTOM</type> <outputDirectory>./WEB-INF</outputDirectory> <impl>com.supermap.services.security.storages.JsonStorage</impl> </storage>
其中: