名称:

Check Permissions | 是否有权限

图标:

Check Permissions是否有权限 - 图1

功能:

  • 判断用户是否有权限或有什么权限
  • 这个元件在后台运行查询 User_Role 和 Role_Permissions 两个数据库表
    · 首先用用户账号在 User_Role 中获取用户的角色
    · 取得用户角色后,查询 Role_Permissions 表来获取用户功能授权名称
  • 这个元件不常用,因为开发模板中用户授权确认是自动确认的,已在底层添加了权限确认;但是对于某些要求更高的处理,可以在“Secure Service安全验证服务器处理”元件的验证逻辑中使用
  • 开发过程中为功能模块添加权限就是为显示元件(如一个按钮或页面)或逻辑处理元件(如一个<On Click>行为处理元件)添加一个“requiredPermission”属性,并将权限名称作为属性值输入;然后在角色中,可以添加这个权限名称,再为用户设定角色后有此角色设定的用户就可以看到显示元件或可以执行授权控制的事件的操作功能了
  • 用此元件来检查权限,比如可以检查权限内容,再用逻辑来管理用户控制用户特定的操作,比如有某个权限的用户可以传No值给按钮的“”变量,如果没有某个权限,则传Yes值

    使用方式:

    检查当前用户是否有某些权限

    输入:

    输出:

  • # Permission Name 1 #”,“# Permission Name 2 #”:空值类型,单数,非必须项,如:将默认的输出“# Permission Name 1 #”重命名为要检查的权限名如“Read”,将默认的输出“# Permission Name 2 #”重命名为要检查的权限名如“Update”;当用户有此名称的权限时,有空值输出,没有时无任何输出,空值输出可以连线至下一步的处理逻辑
    · 如果只需检查一个,删除多余的
    · 如果需要检查多个,可以添加更多输出元件并以权限名称命名,然后点选放置“Nothing”类型变量到输出元件的三角图形中

  • <None>:空值类型的输出,单数,非必须项;空值输出元件,用于无权限时输出空值

    检查当前用户是否有权限执行某个模块对象

    输入:

  • <Model Id>:字符类型的输入,单数,必须项;将要检查的模块对象的Model Id文本字符值传入

    输出:

  • <Not Permitted>:字符类型的输入,单数,非必须项;如果当前用户对<Model Id>输入指向的对象没有权限时,此输出有<Model Id>值传出,可以连线至下一步的处理逻辑或直接连至一个字符信息“没有权限处理”的常量并向下传递此信息

  • <Permitted>:字符类型的输入,单数,非必须项;如果当前用户对<Model Id>输入指向的对象有权限时,此输出有<Model Id>值传出,可以连线至下一步的处理逻辑或直接连至一个文本信息“有权限处理”的常量并向下传递此信息

    检查当前用户是否有权限执行某个模块对象

    输入:

  • <Permission Name>:字符类型的输入,单数,必须项;将要检查的权限名称字符值传入

    输出:

  • <Not Permitted>:文本字符类型的输出,单数,非必须项;如果当前用户对<Model Id>输入指向的对象没有权限时,此输出有<Permission Name>值传出,可以连线至下一步的处理逻辑或直接连至一个字符信息“没有权限处理”的常量并向下传递此信息

  • <Permitted>:文本字符类型的输入,单数,非必须项;如果当前用户对<Model Id>输入指向的对象有权限时,此输出有值<Permission Name>传出,可以连线至下一步的处理逻辑或直接连至一个字符信息“有权限处理”的常量并向下传递此信息

    示例:

    案例:检查用户是否有“Manage Application”权限

    任意一个项目的目录“Common/Templates/Systems/Authorization/Application Pane/Check System Variables/Check System Variables/Has Premission?”中:
    Check Permissions是否有权限 - 图2