授权与加密

阅读(251) 标签: 授权, 加密,

  本章节将介绍集算授权的配置与网格文件的相关权限。

文件加密

为防止未经许可查看或访问网格文件,集算器提供了网格文件加密功能,加密有如下两层权限:

执行权:可以填写参数并执行网格。可以查看网格描述,但不能修改这些信息。在只拥有执行权时,无法看到单元格中的任何字串以及网格变量。在运行后,可以看到运行后单元格的格值。

完全控制权:可以对网格文件进行任何操作。

 

例如,网格如下:

 

A

B

1

Minimum Population

500000

2

$(demo) select * from CITIES

/Get data from table CITIES.

3

$(demo) select STATEID, ABBR from STATES

/Get data from table STATES.

4

=A3.select@1(ABBR==state).STATEID

/Find the STATEID of the given state.

5

=A2.select(POPULATION>B1&& STATEID==A4)

/Find the cities.

6

return A5

 

在网格中,B列中是用注释填写的信息

点击Tool>Cellset description,可以设定网格描述:

在网格中,使用了state作为参数:

在菜单栏中点击Tool>Cellset password,可以在弹出的Cellset password窗口中设置密码:

密码的设定分为两部分:在上方Input password后面可以设定完全控制权的密码;在下方None password privilege后面可以设定无密码时的权限。

设定密码时,只需将密码填入密码框中即可,如上面设置abc为网格的完全控制权密码。

设定无密码时的权限可以在下拉框中选择只允许执行,或者完全控制:

如果选择For full control,则说明无密码时即可使用最高的完全控制权,此时在上方设定的密码将被清空,相当于解除网格的加密设定。

如果我们在网格中设置abc为完全控制权密码,无密码权限为For execution只可执行,然后保存并关闭网格。在再次打开网格时,系统会按照无密码时的权限打开网格,如下:

 

 

A

B

1

 

 

2

 

 

3

 

 

4

 

 

5

 

 

6

 

 

可以看到,在加密后,如果只有执行权限,网格中的代码是全都不可见的,即使是注释格中的内容也不会显示。另外,执行权限下,是不能对网格执行加密操作的。此时点击Tool>Cellset description,仍然可以查看网格描述,但是无法修改:

另外,网格中常数格的值可以在值显示区看到,执行后网格参数的值也可以在右下的网格变量列表中看到:

拥有执行权时,可以在工具栏中点击按钮执行网格计算。如果网格参数需要在运算前设置,仍然会弹出输入窗口:

设置参数后,网格执行计算,计算后返回了结果的单元格会变色,但是单元格中的代码仍然处于加密状态:

 

 

A

B

1

 

 

2

 

 

3

 

 

4

 

 

5

 

 

6

 

 

此时点击单元格,可以在右侧查看单元格的值,如A5格的值如下:

 

执行权限下,在菜单栏中点击Tool>Unlock advanced privilege,可以解锁网格到完全控制权,需要正确输入密码:

在完全控制权下,可以查看或修改网格中的所有代码,也可以进行加密或解密等操作:

授权与注册

集算器的版本通过授权文件来控制,不同版本支持的功能是有差异的,各个版本的具体情况,以及获得授权文件的途径,请参阅官方网站http://www.raqsoft.com.cn/download/download-jsq

获取授权文件后,在运行集算器时,将提示选择授权文件。在集算器菜单栏中点击Help>About可以查看授权信息。

当注册成功后,授权信息会自动存储在集算器的配置文件raqsoftConfig.xml中,这个配置文件默认存储在集算器的[安装目录]\esProc\config路径下。其中的授权信息部分如下:

  <!-- 集算器授权文件-->

  <license>E:\tools\raqsoft\esProc\esproc.xml</license>

也可以不在首次打开集算器时指定授权文件,而自行编辑raqsoftConfig.xml

使用用命令行调用集算器时也将自动加载默认位置的raqsoftConfig.xml来读取授权信息。关于命令行的使用,请参考6.1命令行

如果需要使用集算器JDBC,则需要将配置文件复制到JAVA应用项目的类路径下,在调用集算器JDBC时,会从中读取授权信息。除了默认的配置,在使用集算器 JDBC时,还可以再连接串中用...?config=...的格式来指定配置文件,此时的授权会从指定文件中的<license>节点中读取。如:con= DriverManager.getConnection("jdbc:esproc:local:/?config=myconfig.xml"); 则使用myconfig.xml中的授权信息,而并非默认的raqsoftConfig.xml。关于集算器JDBC的具体部署,请参考6.3JDBC部署