一种api接口权限控制方法和系统的制作方法_2

文档序号:9506463阅读:来源:国知局
分别是角色控制器和菜单码控制器,以及操作码控制器。一个应用程序编程接口 API账号分别通过这三种控制器(角色控制器、菜单控制器和操作码控制器),根据账号、角色、菜单码、操作码之间的关联关系,达到控制API访问权限的目的。
[0050]具体地,为了达到上述目的,本发明提出了一种API接口权限控制方法,如图1所示,该方法包括:
[0051]S101、监测应用账号对API接口的调用请求信息。
[0052]S102、当监测到调用请求信息时,根据预设的操作码控制器获取调用请求信息中包含的API接口对应的操作码。
[0053]在本发明实施例中,操作码控制器,主要负责维护操作码信息,维护并更新操作码与API接口之间的关联关系表,并根据该关联关系表确定某个操作码具有哪些API调用的权限。
[0054]因此,在本发明实施例中,需要预先设置不同的API接口与不同的操作码的第一对应关系,并将第一对应关系存储到操作码控制器中,通过操作码控制器对操作码和第一对应关系进行更新和维护。
[0055]基于上述设置,在本发明实施例中,根据预设的操作码控制器获取调用请求信息中包含的API接口对应的操作码是指:根据操作码控制器中存储的第一对应关系获取调用请求信息中包含的API接口对应的操作码。
[0056]S103、根据预设的菜单码控制器获取与所获取的操作码相对应的菜单码。
[0057]在本发明实施例中,菜单码控制器,主要负责维护菜单码信息,维护并更新菜单码与操作码之间的关联关系表,并根据该关联关系表确定某个菜单码具有哪些操作码的权限。
[0058]因此,在本发明实施例中,需要预先设置不同的菜单码与不同的操作码的第二对应关系,并将第二对应关系存储到菜单码控制器中,通过菜单码控制器对菜单码和第二对应关系进行更新和维护。
[0059]基于上述设置,在本发明实施例中,根据预设的菜单码控制器获取与所获取的操作码相对应的菜单码是指:根据菜单码控制器中存储的第二对应关系获取与所获取的操作码相对应的菜单码。
[0060]S104、根据预设的角色控制器获取应用账号对应的角色,以及该角色相对应的菜单码集。
[0061]在本发明实施例中,角色控制器,主要负责给应用账号赋于不同的角色,并维护各个角色的信息、维护并更新不同的角色与不同的应用账号之间的关联关系表,并根据该关联关系表确定某个应用账号可以具有哪些角色的权限。角色控制器,还负责维护并更新角色与菜单码集之间的关联关系表,并根据该关联关系表确定某个角色具有哪些菜单码集的权限。
[0062]因此,在本发明实施例中,需要预先设置不同的应用账号与不同的角色的第三对应关系,并将第三对应关系存储到角色控制器中;并且预先设置不同的角色与不同的菜单码集的第四对应关系,并将第四对应关系存储到角色控制器中;通过角色控制器对角色的信息、第三对应关系和第四对应关系进行更新和维护
[0063]基于上述设置,在本发明实施例中,根据预设的角色控制器获取应用账号对应的角色是指:根据角色控制器中存储的第三对应关系获取应用账号对应的角色。
[0064]根据预设的角色控制器获取角色相对应的菜单码集是指:根据角色控制器中存储的第四对应关系获取角色相对应的菜单码集。
[0065]S105、查询所获取的菜单码集中是否存在所获取的操作码相对应的菜单码。
[0066]S106、根据查询结果确定是否允许应用账号调用该API接口。
[0067]优选地,根据查询结果确定是否允许应用账号调用该API接口包括:
[0068]当确定所获取的菜单码集中存在与所获取的操作码相对应的菜单码时,允许应用账号调用该API接口。
[0069]当确定所获取的菜单码集中不存在与所获取的操作码相对应的菜单码时,不允许应用账号调用该API接口,并向该应用账号返回错误码提示信息,其中,错误码提示信息中包含该应用账号没有访问权限的信息。
[0070]下面通过参照附图2,对本发明的内容以云海虚拟机开机API为例,采用三种控制器权限控制的方式来描述这一结构的实现过程。
[0071]正如本发明方案中所描述的,本发明中通过角色控制器、菜单码控制器和操作码控制器实现API访问权限的控制。
[0072]当某个账号调用虚拟机开机API时,系统先进入操作码控制器,通过操作码控制器中的第一对应关系,即,操作码-API关联关系表查询该API对应的操作码,得到该API操作码为vm.start,并将该操作码vm.start传入菜单码控制器中。
[0073]系统进入菜单码控制器后,通过传入的操作码vm.start,根据菜单码控制器中的第二对应关系,即,菜单码-操作码关联关系表查询到该操作码对应的菜单码为menu,vm.start,并将该菜单码menu.vm.start传入角色控制器中。
[0074]系统进入角色控制器后,首先,通过角色控制器中的第三对应关系查询调用该API的账号所具有的角色,然后,通过角色控制器中的第四对应关系,g卩,角色-菜单码关联关系表,查询出该角色所拥有的所有菜单码集合,并根据传入的菜单码menu.vm.start,判断该菜单码是否在所查询的菜单码集合中。如果是,则允许调用该API ;如果否,则返回没有权限的错误码提示信息。
[0075]至此,通过角色控制器、菜单码控制器和操作码控制器对API访问权限进行控制的方案已经完成。通过本发明的方案,能够实现API接口权限的控制,避免API接口被随便调用。
[0076]为了达到上述目的,本发明还提出了一种应用程序编程接口 API接口权限控制系统01,如图3所示,该系统包括:监测模块02、第一获取模块03、第二获取模块04、第三获取模块05、查询模块06和确定模块07。
[0077]监测模块02,用于监测应用账号对API接口的调用请求信息。
[0078]第一获取模块03,用于当监测到调用请求信息时,根据预设的操作码控制器获取调用请求信息中包含的API接口对应的操作码。
[0079]第二获取模块04,用于根据预设的菜单码控制器获取与所获取的操作码相对应的菜单码。
[0080]第三获取模块05,用于根据预设的角色控制器获取应用账号对应的角色,以及该角色相对应的菜单码集。
[0081]查询模块06,用于查询所获取的菜单码集中是否存在所获取的操作码相对应的菜单码。
[0082]确定模块07,用于根据查询结果确定是否允许应用账号调用该API接口。
[0083]优选地,确定模块07根据查询结果确定是否允许应用账号调用该API接口是指:
[0084]当确定所获取的菜单码集中存在与所获取的操作码相对应的菜单码时,允许应用账号调用该API接口。
[0085]当确定所获取的菜单码集中不存在与所获取的操作码相对应的菜单码时,不允许应用账号调用该API接口,并向该应用账号返回错误码提示信息,其中,错误码提示信息中包含该应用账号没有访问权限的信息。
[0086]优选地,该系统还包括预设置模块08 ;预设置模块08分别位于操作码控制器所述菜单码控制器和角色控制器中,预设置模块08用于:
[0087]预先设置不同的API接口与不同的操作码的第一对应关系,并将第一对应关系存储到操作码控制器中,对操作码和第一对应关系进行更新和维护。
[0088]预先设置不同的菜单码与不同的操作码的第二对应关系,并将第二对应关系存储到菜单码控制器中,对菜单码和第二对应关系进行更新和维护。
[0089]预先设置不同的应用账号与不同的角色的第三对应关系,并将第三对应关系存储到角色控制器中;并且预先设置不同的角色与不同的菜单码集的第四对应关系,并将第四对应关系存储到角色控制器中;对角色的信息、第三对应关系和第四对应关系进行更新和维护。
[0090]优选地,
[0091]第一获取模块03根据预设的操作码控制器获取调用请求信息中包含的API接口对应的操作码是指:根据操作码控制器中存储的第一对应关系获取调用请求信息中包含的API接口对应
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1