如何添加业务权限凭证
为什么要添加业务权限凭证
通过业务权限凭证,可以控制AppCube的用户对于自定义公共接口的访问权限。如果用户权限中包含了某个业务权限凭证,该用户将能够调用配置了相应业务权限凭证的自定义公共接口。
什么是业务权限凭证
业务权限凭证用于控制接口的访问权限,AppCube提供了配置权限脚本和配置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写”权限,业务用户也无法操作对象数据。若业务用户需要操作对象数据,请将该内置参数配置为“否”。
查看和配置该系统参数的方法为:在AppCube管理中心选择“系统管理 > 系统参数”,在“内置系统参数”查看和配置该参数。
图1 内置系统参数
如何给业务用户添加业务权限凭证
- 创建业务权限凭证。
以在“A”应用中添加业务用户业务权限凭证为例,创建1个业务凭证“cs”,即普通业务用户业务凭证。
- 在AppCube开发环境中,进入已创建的“A”应用中,单击“配置”。
- 在“业务权限凭证”页签,单击“新建”。
- 在标签和名称输入框输入“cs”后,单击“保存并新建”,完成“cs”普通业务用户业务凭证的创建。
图3 新建业务权限凭证
- 创建权限配置。
业务用户的权限主要是在AppCube预置的Portal User Profile权限基础上,进行自定义业务用户权限配置和拓展实现的。在AppCube的权限配置功能中,基于某个权限配置新建的Profile,将会继承原Profile的全部权限。在后续有新的业务用户注册时,只需要为新的业务用户配置对应的权限,即可获取该权限配置中的权限。
以在“A”应用中创建普通业务用户权限“csProfile”为例。
- 登录AppCube管理中心。
- 在左侧导航栏中,选择“用户管理 > 权限配置”,单击“新建”。
- “现有权限配置”选择“Portal User Profile”,克隆模式选择“普通克隆”,设置要新增的“权限配置名称”为“csProfile”,单击“保存”。
图4 基于Portal User Profile新增权限配置
- 在权限配置列表中,单击“csProfile”,进入权限配置详情。
- 在“基本信息”页签,单击“基本信息”右侧编辑按钮
,可进行权限配置。
图6 权限配置这里的权限默认继承AppCube预置的Portal User Profile权限基础,具体权限配置可以根据业务需要进行自由配置。
- 在“业务权限凭证”页签,单击
,勾选“cs”业务凭证,再单击
,保存设置。
图7 配置业务凭证权限
- 配置业务用户权限。
在添加业务用户后,该业务用户是没有任何权限使用AppCube提供的服务的。若需要该业务用户正常使用AppCube,则需要为该用户配置相关的使用权限。以为“A”应用中的业务用户“test_cs”赋予csProfile权限为例。
- 登录AppCube管理中心。
- 在左侧导航栏中,选择“用户管理 > 业务用户”。
- 在业务用户列表中,单击需要配置权限的业务用户“test_cs”。
- 在业务用户详情页面,单击“权限集”下的“编辑”。
- 在编辑权限弹出框中,选中左侧列表的“csProfile”后,单击
将选中的权限添加至右侧列表,单击“保存”完成权限的配置。
图8 权限配置窗口- “csProfile”是基于“Portal User Profile”创建的扩展权限集。除了“csProfile”权限集,其他权限都是系统预置的权限集。对于系统预置的权限集,建议不进行修改,基于系统预置的权限集创建的权限集(如“csProfile”)继承了系统预置的所有权限。
- 勾选“覆盖业务用户权限”时,该业务用户所有权限读取“权限集”中的权限设置;不勾选时,该业务用户应用程序权限读取“Portal User Profile”设置,其余权限读取“权限集”中的权限设置。
图9 覆盖业务用户权限配置
如何给接口添加业务权限凭证
若用户或业务用户需要通过权限访问接口,需要给该接口添加业务权限凭证。为了便于描述,下面以应用“A”为例,向您介绍如何给接口添加业务权限凭证。
- 在“我的应用”中,单击“A”应用,进入“A”应用开发界面。
- 在“A”应用开发页面的左下角,单击“配置”。
- 在右侧页面选择“业务权限凭证”,进入应用配置的业务权限凭证页面。
- 单击“导入”,选择需要导入的业务权限凭证后,单击“导入”,完成业务权限凭证的导入。
图10 导入业务权限凭证
- 在“A”应用开发页面的左下角,单击“服务”,进入自定义访问控制页面。
- 在自定义访问控制页面,单击需要配置业务凭证的接口名称,进入公共接口详情页面。
- 单击业务权限凭证模块下的“编辑”,在“业务权限凭证列表”中选中需要添加的业务权限凭证,单击
,将选择的业务权限凭证添加至右侧列表,单击“保存”,完成业务权限凭证的添加。
图11 编辑业务权限凭证 - (可选)给权限绑定业务权限凭证。
- 在以“A”应用为例的实例中权限绑定业务权限凭证的操作在2中已执行过,此步骤可不执行。
- 若没有执行过权限绑定业务权限凭证的操作,此步骤必须执行。
- 返回AppCube开发环境首页,单击“管理”,进入AppCube管理中心。
- 在左侧导航栏中,选择“用户管理 > 权限配置”。
- 在权限列表中,单击对应业务权限凭证的名称,进入该业务权限凭证的权限配置详情页面。
- 单击“业务权限凭证”,单击
, 勾选“可接入”选项。
图12 权限绑定业务权限凭证
- (可选)给用户或业务用户配置相应权限。
- 在以“A”应用为例的实例中,配置“业务用户”权限的操作在3中已执行过,此步骤可不执行。
- 若没有执行过配置“用户”或“业务用户”权限操作,此步骤必须执行。
- 在左侧导航栏中,选择“用户管理 > 用户”或“用户管理 > 业务用户”。
- 给用户或业务用户配置相应的权限,该用户或业务用户即可获取调用相应API接口的权限,否则将无法通过API接口的业务权限凭证校验。