书签 分享 收藏 举报 版权申诉 / 10

用于应用软件的权限控制方法和装置.pdf

  • 上传人:a3
  • 文档编号:4232634
  • 上传时间:2018-09-09
  • 格式:PDF
  • 页数:10
  • 大小:445.41KB
  • 摘要
    申请专利号:

    CN201010548051.X

    申请日:

    2010.11.17

    公开号:

    CN102467642A

    公开日:

    2012.05.23

    当前法律状态:

    授权

    有效性:

    有权

    法律详情:

    授权|||实质审查的生效IPC(主分类):G06F 21/22申请日:20101117|||公开

    IPC分类号:

    G06F21/22

    主分类号:

    G06F21/22

    申请人:

    北大方正集团有限公司; 北京北大方正电子有限公司

    发明人:

    侯存军; 谢浩

    地址:

    100871 北京市海淀区成府路298号方正大厦5层

    优先权:

    专利代理机构:

    北京英赛嘉华知识产权代理有限责任公司 11204

    代理人:

    王达佐

    PDF完整版下载: PDF下载
    内容摘要

    本发明提供了一种用于应用软件的权限控制方法,包括:确定应用软件的用户的权限在各个权限种类中的权限级别;通过查找预先建立的权限映射关系记录确定的权限种类及其权限级别,其中,权限映射关系包括将每个权限种类映射到一个ID,将各个权限种类中的各个权限级别映射到一个数值;采用记录的ID和数值控制对应用软件的登录使用。本发明还提供了一种应用软件的权限控制装置。本发明能在软件开发维护过程中方便迅速地设置修改应用程序中的权限控制。

    权利要求书

    1: 一种用于应用软件的权限控制方法, 其特征在于, 包括 : 确定所述应用软件的用户的权限在各个权限种类中的权限级别 ; 通过查找预先建立的权限映射关系记录所述确定的权限种类及其权限级别, 其中, 所 述权限映射关系包括将每个所述权限种类映射到一个 ID, 将各个所述权限种类中的各个权 限级别映射到一个数值 ; 采用所述记录的 ID 和数值控制对所述应用软件的登录使用。
    2: 根据权利要求 1 所述的方法, 其特征在于, 确定所述应用软件的用户的权限在各个 权限种类中的权限级别包括 : 确定所述用户所属的角色 ; 确定所述角色在各个所述权限种类中的权限级别, 以作为所述用户的权限在各个权限 种类中的权限级别。
    3: 根据权利要求 2 所述的方法, 其特征在于, 确定所述角色在各个所述权限种类中的 权限级别包括 : 通过查找预先建立的角色映射关系确定所述角色在各个所述权限种类中的权限级别, 其中, 所述角色映射关系包括所述应用软件的每个角色在各个所述权限种类中的权限级 别。
    4: 根据权利要求 1 所述的方法, 其特征在于, 采用数据库或文件记录各个所述权限种 类的 ID 及所述用户的权限在各个所述权限种类中的权限级别的数值。
    5: 根据权利要求 1 所述的方法, 其特征在于, 在所述映射关系中, 所述权限级别越高, 所映射的数值越大。
    6: 根据权利要求 5 所述的方法, 其特征在于, 还包括 : 将所述用户的所有所述数值相加 ; 根据所述和值的大小确定所述用户的级别。
    7: 一种用于应用软件的权限控制装置, 其特征在于, 包括 : 确定模块, 用于确定所述应用软件的用户的权限在各个权限种类中的权限级别 ; 记录模块, 用于通过查找预先建立的权限映射关系记录所述确定的权限种类及其权限 级别, 其中, 所述权限映射关系包括将每个所述权限种类映射到一个 ID, 将各个所述权限种 类中的各个权限级别映射到一个数值 ; 控制模块, 用于采用所述记录的 ID 和数值控制对所述应用软件的登录使用。
    8: 根据权利要求 7 所述的装置, 其特征在于, 所述确定模块包括 : 角色确定模块, 用于 确定所述用户所属的角色 ; 角色映射模块, 用于确定所述角色在各个所述权限种类中的权限级别, 以作为所述用 户的权限在各个权限种类中的权限级别。
    9: 根据权利要求 7 所述的装置, 其特征在于, 所述记录模块采用数据库或文件记录各 个所述权限种类的 ID 及所述用户的权限在各个所述权限种类中的权限级别的数值。
    10: 根据权利要求 7 所述的装置, 其特征在于, 还包括 : 相加模块, 用于将所述用户的所有所述数值相加, 其中, 在所述映射关系中, 所述权限 级别越高, 所映射的数值越大 ; 权值模块, 用于根据所述和值的大小确定所述用户的级别。

    说明书


    用于应用软件的权限控制方法和装置

        【技术领域】
         本发明涉及应用软件开发领域, 具体而言, 涉及用于应用软件的权限控制方法和装置。 背景技术 通常, 应用软件的使用者通过 “用户” 登录应用软件, 以使用应用软件中对用户所 开放的功能, 用户是应用软件中对使用者设置的身份, 并赋予用户对应用软件中部分功能 的一定权限。很多应用软件允许多用户登录多用户使用, 而对于不同的用户授予不同的权 限以使不同的用户能够进行不同的操作通常是必须的, 因此如何对不同的用户进行相应的 权限控制非常重要。
         一般的权限控制方法是 : 直接记录各用户所拥有的权限, 例如记录格式为文字记 载 “用户 qq, 可以打开作业, 不能删除资源” , 用户进行登录时直接检查用户的登录权限, 用 户使用某一功能模块时则直接进行用户对此模块是否具有使用权限进行检查, 通过验证则 允许使用, 验证失败则拒绝登录或使用。
         现有技术的缺陷在于, 当应用程序需要增加功能时需要修改关于用户的权限的代 码, 开发工作中重复工作量大, 而且增加测试工作量, 给软件带来出错隐患。
         发明内容 本发明旨在提供一种用于应用软件的权限控制方法和装置, 以解决现有技术权限 控制不灵活的问题。
         在本发明的实施例中, 提供了一种用于应用软件的权限控制方法, 包括 : 确定应用 软件的用户的权限在各个权限种类中的权限级别 ; 通过查找预先建立的权限映射关系记录 确定的权限种类及其权限级别, 其中, 权限映射关系包括将每个权限种类映射到一个 ID, 将 各个权限种类中的各个权限级别映射到一个数值 ; 采用记录的 ID 和数值控制对应用软件 的登录使用。
         在本发明的实施例中, 提供了一种用于应用软件的权限控制装置, 包括 : 确定模 块, 用于确定应用软件的用户的权限在各个权限种类中的权限级别 ; 记录模块, 用于通过查 找预先建立的权限映射关系记录确定的权限种类及其权限级别, 其中, 权限映射关系包括 将每个权限种类映射到一个 ID, 将各个权限种类中的各个权限级别映射到一个数值 ; 控制 模块, 用于采用记录的 ID 和数值控制对应用软件的登录使用。
         本发明上述实施例的用于应用软件的权限控制方法和装置, 因为采用规则化的 ID 和数值来记录用户的权限, 所以解决了现有技术权限控制不灵活的问题, 达到了能在软件 开发维护过程中方便迅速地设置修改应用程序中的权限控制的效果。
         附图说明
         此处所说明的附图用来提供对本发明的进一步理解, 构成本申请的一部分, 本发明的示意性实施例及其说明用于解释本发明, 并不构成对本发明的不当限定。在附图中 :
         图 1 示出了根据本发明实施例的权限控制方法的流程图 ;
         图 2 示出了根据本发明优选实施例的记录权限的数据文件 ;
         图 3 示出了根据本发明优选实施例的进行权限控制的流程图 ;
         图 4 示出了根据本发明优选实施例的权限控制方法的流程图 ;
         图 5 示出了根据本发明实施例的权限控制装置的示意图。 具体实施方式
         下面将参考附图并结合实施例, 来详细说明本发明。
         图 1 示出了根据本发明实施例的权限控制方法的流程图, 包括 :
         步骤 S10, 确定应用软件的用户的权限在各个权限种类中的权限级别 ;
         步骤 S20, 通过查找预先建立的权限映射关系记录确定的权限种类及其权限级别, 其中, 权限映射关系包括将每个权限种类映射到一个 ID, 将各个权限种类中的各个权限级 别映射到一个数值 ;
         步骤 S30, 采用记录的 ID 和数值控制对应用软件的登录使用。
         现有技术直接记录各用户所拥有的权限, 而本实施例中采用规则化的 ID 和数值 来记录用户的权限, 所以解决了现有技术权限控制不灵活的问题, 达到了能在软件开发维 护过程中方便迅速地设置修改应用程序中的权限控制的效果。
         可以预先建立一个权限映射关系表, 如下表所示 :
         模块 使用作业 修改作业 删除资源 操作监控管理
         ID 1 2 11 12另外, 现有技术中增加功能模块时对于应用软件中新增加的模块, 权限的判断要 进行相应修改, 所以在此种方式下进行应用软件的开发一般效率比较低且出错几率比较 大。 而本实施例中可以在即使应用软件当前的用户不涉及某些权限种类或其中的某些权限 级别时, 为了方便应用软件的升级、 维护, 预定定义各种权限种类及其所包含的权限级别, 以便当软件中的用户、 角色、 功能模块进行增加、 减少等改动时可以方便进行修改, 并且不 影响当前用户的使用习惯及控制要求 ; 如果应用软件需要增加角色, 则只需定义角色的属 性、 所拥有的各功能模块的权限即可, 以后再增加此角色的用户时记录此用户所属的角色 即可。将权限映射关系用数据库或数据文件保存起来, 可以供检索使用。
         图 2 示出了根据本发明优选实施例的记录权限的数据文件。如图, qq 为用户名, “操作员组” 为其角色, 后面的 “1, 0; 2, 2; 4, 0; 5, 0; 6, 0; 7, 0; 8, 0” 为记录的权限信息, 字 符中的 “; ” 分隔各种权限, 分开的字符串中每两个数字一组, 前一个数字代表权限的种类 ( 即 ID), 如 “修改作业、 删除资源、 使用标记” 等, 后面的数字代表权限的级别, 或者说 分值, 如 0 分可以打开作业, 不能删除资源, 则用户 qq 可以使用作业, 不能删除资源, 用户 “administrator” 可以删除资源等。
         在权限控制过程中, 当用户需要使用应用软件软件时, 首先需要登录, 登录时根据 用户名称、 密码进行身份检查, 如果用户不存在或者密码错误则给出提示并拒绝登录。 登录 用户通过身份认证登入软件以后, 应用软件启动时, 首先读取此用户所属的角色, 再读取此 角色所拥有的权限, 根据角色所拥有对各模块的权限加载应用软件的各模块。首先依次读 入此角色所具有的查看级别的以及比查看级别高的权限的功能模块。然后, 依次将具有上 述权限的模块加载、 显示到界面中, 对于完全不具有权限的模块则不进行加载, 对于用户需 要某些操作以后才具有权限的模块则只进行加载但不显示在界面中, 当进行了相应的操作 以后刷新界面时再进行显示。在界面中所显示的模块用户可以进行操作, 当执行某一操作 时, 首先读取此用户所属的角色, 再读取此角色对于此功能的权限, 对于只能查看的功能, 显示出用户可以查看的信息, 不提供操作的接口。 对于拥有操作权限的模块, 首先判断操作 权限的级别, 如果拥有最高级别的操作权限, 则所有操作都通过验证, 如果不是, 则禁止无 权限的操作。对于用户自身之前提交的数据, 用户可以进行修改、 查看, 对于其他用户提交 的数据, 则需要进一步检查用户的权限, 如果不具有修改的权限, 则在修改时给出提示并拒 绝修改, 返回之前的界面, 继续进行其他操作, 如果具有修改的权限, 则接受所提交的操作 并进行处理, 对处理过程进行记录。 下面以图 3 的优选实施例为例, 详细介绍使用者登录应用软件以后, 对所进行的 操作进行权限的检查的具体实施过程。首先定义几个用户、 角色、 权限级别以及操作, 其 中, user1、 user2、 user3、 user4 分别为 4 个不同角色的用户 ; viewer、 operator、 admin 分 别表示只能进行查看的角色、 可以进行作业操作的角色、 拥有对所有模块和操作的使用及 修改权限的角色 ; module1、 module2、 module3 分别为三个不同的功能模块, operation1、 operation2 为两个操作, 如图 3 所示, 包括如下步骤 :
         S300、 viewer 角色拥有 module1、 module2 模块的查看权限, operator 拥有这两个 模块的使用权限及 operation1 的使用权限 ; admin 则拥有所有权限 ;
         S301、 判断角色 viewer、 operator、 admin 的分类是否符合进行权限控制的要求, 判定后此种分类能够满足当前的权限控制要求, 故继续 S302, 否则需进行修改 ;
         S302、 将 user1 分配 viewer 角色, user2 分配 operator 角色, user3 分配 admin 角 色, 然后继续 S303 ;
         S303、 判定用户 user1、 user2、 user3、 user4 所分配的权限能否满足进行权限控制 的要求 ; 能满足则继续 S305, 否则转至 S301 ;
         S304、 重新分配角色 viewer 的权限, 需要此角色能够至少拥有一个模块 module1 或 module2 的使用权, 然后转至 S300 ;
         S305、 给 用 户 user1、 user2、 user3、 user4 分 配 对 于 模 块 module1、 module2、 module3 的权限的权值, 用户 user1 对于 module1 的权值为 0, 用户 user2 对于 module2 的 权值为 1 用户 user3 对于 module3 的权值为 2, 继续 S306 ;
         S306、 将以上分配的用户、 角色、 权限的各自相对应数据进行记录, 继续 S307 ;
         S307、 用户 user1、 user2、 user3 在各自的客户端进行登录, 判断用户是否具有登
         录的权限, 如 user3, 读取器角色为 admin, 具有此权限, 则继续 S 308, 如果否, 提示用户更 换身份重新登录 ;
         S308、 用户 user1、 user2、 user3 登录成功, 进行各自的操作, 如用户 user3 创建新 用户, 继续 S309 ;
         S309、 判断用户 user3 是否拥有创建新用户的权限, 读取 user3 的角色为 admin, 拥 有所有权限, 故验证通过, 继续 S310, 否则验证不能通过, 给出提示更换用户后转至 S308 ;
         S310、 接受提交的操作, 创建新用户完成, 后继续其他处理, 提交作业给系统, 继续 S311 ;
         S311、 进行提交的处理, 记录处理数据, 返回处理结果给用户, 刷新界面 ;
         其他用户的各种界面及操作的处理过程与上面用户权限控制过程相同 ;
         至此, 对系统各用户、 角色的权限控制完成。
         优选地, 步骤 S10 包括 : 确定用户所属的角色 ; 确定角色在各个权限种类中的权限 级别, 以作为用户的权限在各个权限种类中的权限级别。在应用软件中通常规定了角色的 权限, 通过角色来定义用户。 本优选实施例直接确定用户所属的角色, 从而方便快速地确定 用户的权限。
         优选地, 确定角色在各个权限种类中的权限级别包括 : 通过查找预先建立的角色 映射关系确定角色在各个权限种类中的权限级别, 其中, 角色映射关系包括应用软件的每 个角色在各个权限种类中的权限级别。可以将每个角色的权限映射关系预先列在表中, 这 样可以查表就能确定用户权限, 进一步提高了效率。
         优选地, 采用数据库或文件记录各个权限种类的 ID 及用户的权限在各个权限种 类中的权限级别的数值。记录用户、 角色及权限的数据, 可以直接存入数据库中, 也可以保 存为文件的形式直接保存于计算机磁盘中, 文件格式可以是 XML 格式, 也可以是用户自定 义格式。数据库和数据文件可以方便权限控制中的检索使用。
         优选地, 在映射关系中, 权限级别越高, 所映射的数值越大。优选地, 本方法还包 括: 将用户的所有数值相加 ; 根据和值的大小确定用户的级别。现有技术中进行权限判断 特别是进行多种条件的叠加判断时需要进行复杂计算, 增加系统负担, 系统响应变慢, 软件 易用性变差。 而在本优选实施例中, 因为映射的数值大小和权限级别高低直接相关, 所以可 以通过相加后的和值大小直观地明确用户的权限高低, 方便对用户的管理。
         图 4 示出了根据本发明优选实施例的用户权限控制方法的流程图, 包括以下步 骤:
         步骤 41, 将角色进行分类 ;
         步骤 42, 对用户分配角色 ;
         步骤 43, 根据用户的角色确定用户的权限种类及其权限级别, 其中包括 :
         步骤 431, 权值种类映射 ;
         步骤 432, 角色权限映射 ;
         步骤 44, 根据记录的权限数据进行相应的权限控制。
         图 5 示出了根据本发明实施例的权限控制装置的示意图, 包括 :
         确定模块 10, 用于确定应用软件的用户的权限在各个权限种类中的权限级别 ;
         记录模块 20, 用于通过查找预先建立的权限映射关系记录确定的权限种类及其权限级别, 其中, 权限映射关系包括将每个权限种类映射到一个 ID, 将各个权限种类中的各个 权限级别映射到一个数值 ;
         控制模块 30, 用于采用记录的 ID 和数值控制对应用软件的登录使用。
         本装置能在软件开发维护过程中方便迅速地设置修改应用程序中的权限控制的 效果。
         优选地, 确定模块 10 包括 : 角色确定模块, 用于确定用户所属的角色 ; 角色映射模 块, 用于确定角色在各个权限种类中的权限级别, 以作为用户的权限在各个权限种类中的 权限级别。本优选实施例直接确定用户所属的角色, 从而方便快速地确定用户的权限。
         优选地, 记录模块 20 采用数据库或文件记录各个权限种类的 ID 及用户的权限在 各个权限种类中的权限级别的数值。数据库和数据文件可以方便权限控制中的检索使用。
         优选地, 本装置还包括 : 相加模块, 用于将用户的所有数值相加, 其中, 在映射关系 中, 权限级别越高, 所映射的数值越大 ; 权值模块, 用于根据和值的大小确定用户的级别。 在 本优选实施例中, 因为映射的数值大小和权限级别高低直接相关, 所以可以通过相加后的 和值大小直观地明确用户的权限高低, 方便对用户的管理。
         从以上的描述中可以看出, 本发明上述的实施例使得各用户的权限控制过程得以 简化, 减少权限控制过程的数据读取, 同时对于软件中应用模块的增加, 也降低了对新模块 的权限控制的复杂度, 并通过将用户、 角色、 权限数据进行统一记录, 提高了权限验证速度, 从而提高软件进行权限控制的速度, 能够适应软件开发中用户、 角色、 功能模块经常变化的 要求。 显然, 本领域的技术人员应该明白, 上述的本发明的各模块或各步骤可以用通用 的计算装置来实现, 它们可以集中在单个的计算装置上, 或者分布在多个计算装置所组成 的网络上, 可选地, 它们可以用计算装置可执行的程序代码来实现, 从而可以将它们存储在 存储装置中由计算装置来执行, 或者将它们分别制作成各个集成电路模块, 或者将它们中 的多个模块或步骤制作成单个集成电路模块来实现。这样, 本发明不限制于任何特定的硬 件和软件结合。
         以上所述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本领域的技 术人员来说, 本发明可以有各种更改和变化。 凡在本发明的精神和原则之内, 所作的任何修 改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。
        

    关 键  词:
    用于 应用软件 权限 控制 方法 装置
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:用于应用软件的权限控制方法和装置.pdf
    链接地址:https://www.zhuanlichaxun.net/p-4232634.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1