认可¶
项
为了对页面设置访问权限¶
通过设置路由,可以实现页面访问。但是在路由表中使用 welcome-all 映射器后认可处理将被省略,因此任何人都可以访问页面。在实际运行系统时,几乎都需要设置访问权限,只对特定用户显示页面并限制访问。本章将介绍使用 Accel Platform 提供的认可功能,仅对特定用户显示页面的步骤。
页面访问的认可设置方法¶
步骤1:使路由表与认可关联¶
为了与认可关联,在路由表中编写 authz 标签。<?xml version="1.0" encoding="UTF-8"?> <routing-jssp-config xmlns="http://www.intra-mart.jp/router/routing-jssp-config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.intra-mart.jp/router/routing-jssp-config routing-jssp-config.xsd"> <file-mapping path="/app/foo" page="business/foo" /> <authz uri="service://sample/foo" action="execute" /> </file-mapping> </routing-jssp-config>警告
将字符编码置为UTF-8并保存。请删除<authz-default mapper=”welcome-all” />。在页面的 uri 属性中指定以”service://“开头的字符串。这里的”service”是表示“资源类型”的字符串,”service”表示“页面处理” 。“service”资源类型中只提供了一个”execute”(执行)操作。因此,要在 action 属性中指定 “execute” 。
步骤2:创建认可的资源组、资源¶
为了将示例中创建的页面与认可关联起来,对认可登记资源组和资源。
首先登记资源组。创建空的<authz-resource-group.xml>文件,输入以下代码并保存。<?xml version="1.0" encoding="UTF-8"?> <root xmlns="http://www.intra-mart.jp/authz/imex/resource-group"> <authz-resource-group id="guide-sample-service"> <display-name> <name locale="zh_CN">编程指南的示例</name> </display-name> <parent-group id="http-services" /> </authz-resource-group> </root>警告
请将字符代码置为 UTF-8 并保存。注解
authz-resource-group 标签的 id 属性中可以指定任意 ID 。请在 parent-group 标签的 id 属性中指定 “http-services” 。然后,创建空的<authz-resource.xml>文件,输入以下代码并保存。<?xml version="1.0" encoding="UTF-8"?> <root xmlns="http://www.intra-mart.jp/authz/imex/resource"> <authz-resource id="guide-sample-foo-service" uri="service://sample/foo"> <display-name> <name locale="ja">Hello World</name> </display-name> <parent-group id="guide-sample-service" /> </authz-resource> </root>警告
请将字符代码置为 UTF-8 并保存。注解
authz-resource 标签的 id 属性中可以指定任意 ID 。uri 属性中,指定与路由表中指定的 authz 标签的 uri 属性相同的值。parent-group 标签的 id 属性中,指定与先前创建的 authz-resource-group 的 id 属性相同的值。
步骤3:导入资源¶
把刚才创建的 <authz-resource-group.xml> 与 <authz-resource.xml> 配置在 <STORAGE_PATH>/public/storage 目录下。利用Tenant管理员身份登录 Accel Platform 。http://<HOST>:<PORT>/<CONTEXT_PATH>/login依次点击“网站地图”→“Tenant管理”→“作业管理”→“作业网设置”。
通过“作业网一览”,选择“Tenant管理”-“导入”-“导入认可(资源组)” 。点击页面下方的“编辑此作业网”按钮。从“触发器设定”下拉列表中选择“重复指定”并点击“新建”按钮。选择“只执行1次”,点击“确定”按钮。勾选“有效”复选框,点击“用此内容更新JOB NET”按钮。在确认消息中点击“确定”按钮。
通过“作业网一览”选择“Tenant管理”-“导入”-“导入认可(资源)” 。进行同样操作,更新作业网。依次点击“网站地图”→“Tenant管理”→“作业管理”→“作业网监视器”。确认一览中显示了“导入认可(资源组)” “导入认可(资源)”2行数据,且状态为“成功” 。
至此,对认可的资源登记操作结束。依次点击“网站地图”→“Tenant管理”→“认可”。点击认可设置页面左上角的“检索”图标。在“资源(纵轴)限定”文本框中输入“Hello”并点击“检索”按钮。
可以确认资源列的“页面处理”下方显示了“编程指南的示例”,再下方显示了“Hello World”。至此,对该示例页面的资源登记操作结束。在此状态下尝试访问 http://<HOST>:<PORT>/<CONTEXT_PATH>/app/foo 。确认发生HTTP 403 无法进行访问。
步骤4:对资源设置权限¶
最后,通过此认可设置页面对“Hello World”进行认可设置。依次点击“网站地图”→“Tenant管理”→“认可”。点击认可设置页面左上角的“检索”图标。在“资源(纵轴)限定”文本框中输入“Hello”并点击“检索”按钮。
点击“开始设置权限”按钮。点击“Hello World”行与“Tenant管理者”列交叉的单元格,变为绿色勾选号。
在此状态下,再次尝试访问 http://<HOST>:<PORT>/<CONTEXT_PATH>/app/foo 。这次确认能够正常访问。这时,只有具有“Tenant管理者”身份的用户才能显示该示例页面。注解
在本教程中确认了以下要点。
为了控制页面访问,使用了认可功能。 为了能够在认可中使用页面的权限设置,在认可中登记了使认可与页面关联的资源与资源组。 管理者打开认可设置页面,对需要控制访问的页面资源设置了权限。