创建AstroZero业务权限凭证
业务权限凭证用于控制接口的访问权限。在业务权限凭证中,可以创建、查看并管理业务权限凭证信息。
为什么要添加业务权限凭证
通过业务权限凭证,可以控制AstroZero的用户对于自定义公共接口的访问权限。如果用户权限中包含了某个业务权限凭证,该用户将能够调用配置了相应业务权限凭证的自定义公共接口。
什么是业务权限凭证
业务权限凭证用于控制接口的访问权限,AstroZero提供了配置权限脚本和配置API接口两种方式来控制API接口的访问权限。建议优先通过权限脚本进行权限验证,根据脚本的返回值判断下一步的操作。
- 对于配置了业务权限凭证的接口,需要在权限的“业务权限凭证”页签中接入相应的业务权限凭证,才可调用API接口。
- 若用户(User)没有配置业务权限凭证,则继续校验Profile权限中的数据权限(例如执行服务编排、执行脚本、对象的增删改查、API读、API写权限)。
- 若业务用户(PortalUser)没有配置业务权限凭证,调用接口直接报错,不会继续校验Profile权限中的数据权限。
- 对于未配置业务权限凭证的接口,则需要查看内置系统参数“bingo.permission.customapi.check”取值,该参数控制公共接口未绑定业务权限凭证时的逻辑。
- 若该参数取值为“是”,公共接口未绑定业务权限凭证时,业务用户(PortalUser)无法访问该接口;对于用户(User),则继续校验Profile权限中的数据权限。
- 若该参数取值为“否”,公共接口未绑定业务权限凭证时,业务用户(PortalUser)可直接访问该接口,无需鉴权;对于用户(User),则继续校验Profile权限中的数据权限。
例如:内置参数bingo.permission.customapi.check配置为“是”,接口未绑定业务权限凭证,即使在权限设置中勾选“API读”与“API写”权限,业务用户也无法操作对象数据。若业务用户需要操作对象数据,请将该内置参数配置为“否”。
查看和配置该系统参数的方法为:在AstroZero环境配置中选择“系统设置 > 系统参数”,在“内置系统参数”查看和配置该参数。
图1 内置系统参数
给业务用户添加业务权限凭证
- 创建业务权限凭证。
- 在AstroZero服务控制台,单击“进入首页”,进入应用开发页面。
- 在页面左上方单击,选择 ,进入环境配置。
- 在主菜单中,选择“维护”。
- 在左侧导航栏中,选择“全局元素 > 业务权限凭证”。
- 在业务权限凭证页面,单击“新建”。
- 在标签和名称输入框输入“cs”后,单击“保存并新建”,完成“cs”普通业务用户业务凭证的创建。
- 创建权限配置。
业务用户的权限主要是在AstroZero预置的Portal User Profile权限基础上,进行自定义业务用户权限配置和拓展实现的。在AstroZero的权限配置功能中,基于某个权限配置新建的Profile,将会继承原Profile的全部权限。在后续有新的业务用户注册时,只需要为新的业务用户配置对应的权限,即可获取该权限配置中的权限。
以在“A”应用中创建普通业务用户权限“csProfile”为例。
- 在主菜单中,选择“配置”。
- 在左侧导航栏中,选择“用户安全 > 权限”,单击“新建”。
- “现有权限配置”选择“Portal User Profile”,克隆模式选择“普通克隆”,设置要新增的“权限配置名称”为“csProfile”,单击“保存”。
图2 基于Portal User Profile新增权限配置
- 克隆模式选择“继承克隆”时,除基本信息和业务权限凭证,其余权限屏蔽编辑按钮。
- 克隆模式选择“普通克隆”时,不会屏蔽编辑按钮。
- 在权限配置列表中,单击“csProfile”,进入权限配置详情。
- 在“基本信息”页签,单击“基本信息”右侧编辑按钮,可进行权限配置。
各权限项功能介绍,请参见表1。
这里的权限默认继承AstroZero预置的Portal User Profile权限基础,具体权限配置可以根据业务需要进行自由配置。
- 在“业务权限凭证”页签,单击,勾选“cs”业务凭证,再单击,保存设置。
图3 配置业务凭证权限
- 配置业务用户权限。
在添加业务用户后,该业务用户是没有任何权限使用AstroZero提供的服务的。若需要该业务用户正常使用AstroZero,则需要为该用户配置相关的使用权限。以为“A”应用中的业务用户“test_cs”赋予csProfile权限为例。
- 在主菜单中,选择“维护”。
- 在左侧导航栏中,选择“全局元素 > 业务用户”。
- 在业务用户列表中,单击需要配置权限的业务用户“test_cs”。
- 在业务用户详情页面,单击“编辑”。
- 在编辑权限弹出框中,选中左侧列表的“csProfile”后,单击将选中的权限添加至右侧列表,单击“保存”完成权限的配置。
- “csProfile”是基于“Portal User Profile”创建的扩展权限集。除了“csProfile”权限集,其他权限都是系统预置的权限集。对于系统预置的权限集,建议不进行修改,基于系统预置的权限集创建的权限集(如“csProfile”)继承了系统预置的所有权限。
- 勾选“覆盖业务用户权限”时,该业务用户所有权限读取“权限集”中的权限设置;不勾选时,该业务用户应用程序权限读取“Portal User Profile”设置,其余权限读取“权限集”中的权限设置。
图4 覆盖业务用户权限配置
给接口添加业务权限凭证
如果用户或业务用户需要通过权限访问接口,需要给该接口添加业务权限凭证。为了便于描述,下面以应用“A”为例,向您介绍如何给接口添加业务权限凭证。
- 在AstroZero服务控制台,单击“进入首页”,进入应用开发页面。
- 在“编辑”,进入“A”应用设计器。 中,单击“A”应用后的
- 在左侧导航栏中,单击“设置”。
- 在应用设置页面,单击“权限设置”,进入业务权限凭证页面。
- 单击“导入”,选择需要导入的业务权限凭证后,单击“导入”,完成业务权限凭证的导入。
在应用中选择导入业务权限凭证是因为在1中已创建了需要的“cs”业务凭证。如果之前还未创建需要的业务凭证,则可以在本页面中单击“新建”,新建业务凭证。
图5 导入cs业务凭证
- 在应用设计器的左侧导航栏中,选择“集成”。
- 在开放接口中,单击需要配置业务凭证的接口名称,进入公共接口详情页面。
- 单击业务权限凭证模块下的“编辑”,在“业务权限凭证列表”中选中需要添加的业务权限凭证,单击,将选择的业务权限凭证添加至右侧列表,单击“保存”,完成业务权限凭证的添加。
图6 编辑业务权限凭证