本发明涉及权限控制的,尤其涉及一种为服务端软件系统增加权限控制的方法和装置。
背景技术:
1、目前,随着互联网技术的发展,当客户端软件系统通过接口操作服务端软件系统中的数据时,如果服务端软件系统中对被操作的数据没有很严格的权限控制策略,就会导致多个客户端软件系统的操作无法被隔离,可能造成某些数据被非法访问和篡改。
2、然而,现有技术中,针对上述问题的解决方法通常是针对服务端软件系统的接口,定制开发一个带有权限控制功能的代理服务并提供一套新的接口,客户端软件系统通过新的接口访问代理服务,代理服务对客户端软件系统的访问请求进行认证和鉴权,鉴权通过后,代理服务再将客户端软件系统的访问请求转为服务端软件系统可识别的接口调用,然后使用管理员账号调用服务端软件系统的接口。
3、但本申请发明人发现上述技术至少存在如下问题:
4、问题一:上述方法需要针对每种服务端软件系统定制开发相应的代理服务,代理服务中的认证和鉴权方法没有规范,无法重用。
5、问题二:上述方法中的代理服务的接口与服务端软件系统的接口不兼容,客户端软件系统需要做相应的适配和修改。
技术实现思路
1、本发明的目的在于提供一种为服务端软件系统增加权限控制的方法和装置,旨在解决现有技术中需要针对每种服务端软件系统定制开发相应的代理服务的问题。
2、本发明是这样实现的,一种为服务端软件系统增加权限控制的方法,包括如下步骤:
3、代理服务接收客户端软件系统的请求;
4、根据请求中附带的证书进行身份认证;
5、身份认证通过时,判断所述请求是数据访问请求或数据授权请求;
6、根据判断结果,对所述请求执行对应的处理;其中,所述请求对应的数据为文件路径格式数据,代理服务中预先对服务端软件系统中被保护的数据进行路径映射。
7、进一步地,所述根据判断结果,对所述请求执行对应的处理的步骤,包括:
8、若所述请求为数据访问请求,则加载数据访问策略库;
9、对数据访问请求进行鉴权;
10、鉴权通过,则将数据访问请求转发至服务端软件系统接口并调用;
11、将调用结果返回给客户端软件系统;
12、若所述请求为数据授权请求,则加载数据授权策略库;
13、对数据授权请求进行鉴权;
14、鉴权通过,则将对所述数据授权请求的权限信息写入数据访问策略库。
15、进一步地,所述代理服务中预先对服务端软件系统中被保护的数据进行路径映射的步骤,包括:
16、代理服务以文件路径格式管理服务端软件系统中被保护的数据,将服务端软件系统的数据访问接口的参数格式与所述文件路径格式进行映射,使得任何一个被保护的数据访问接口的参数转换为一个确定的文件路径格式数据。
17、进一步地,所述加载数据访问策略库中,数据访问策略库维护了“a客户端对x数据有y权限”,代理服务加载数据访问策略库的全部内容进行下一步计算。
18、进一步地,所述对访问请求进行鉴权中,鉴权方式为将参数中请求的数据转为文件路径格式,并根据客户端身份信息以及文件路径格式数据,在数据访问策略库中寻找相关权限策略是否能匹配成功。
19、进一步地,所述数据授权策略库中维护了“a客户端 可以给 b客户端 授权 x数据的 y权限”,代理服务加载数据授权策略库的全部内容进行下一步计算。
20、进一步地,所述将权限信息写入数据访问策略库中,代理服务将请求中内容转为“a客户端 对 x 数据 有 y权限”的数据格式,并写入数据访问策略库。
21、本发明还提供了一种为服务端软件系统增加权限控制的装置,包括:
22、请求接收模块,用于代理服务接收客户端软件系统的请求;
23、认证模块,用于根据请求中附带的证书进行身份认证;
24、判断模块,用于判断所述请求是数据访问请求还是数据授权请求;
25、处理模块,用于根据判断结果,对所述请求执行对应的处理;其中,所述请求对应的数据为文件路径格式数据,代理服务中预先对服务端软件系统中被保护的数据进行路径映射。
26、进一步地,所述代理服务中预先对服务端软件系统中被保护的数据进行路径映射,具体包括:
27、代理服务以文件路径格式管理服务端软件系统中的数据,将服务端软件系统的数据访问接口的参数格式与所述文件路径格式进行映射,使得任何一个数据访问接口的参数都可以转为一个确定的文件路径数据。
28、与现有技术相比, 因为增加了在代理服务中预先对服务端软件系统中被保护的数据进行路径映射,使得任何一个数据访问接口的参数都可以转为一个确定的文件路径数据,所以所述技术无需针对不同的服务端软件系统定制开发代理服务,只需要在一个标准的代理服务上进行扩展和适配,降低了技术复杂度,提升了代理服务的可维护性;客户端软件系统在调用服务端软件系统的数据访问接口时,无需做任何修改。
1.一种为服务端软件系统增加权限控制的方法,其特征在于,包括如下步骤:
2.如权利要求1所述的方法,其特征在于,所述根据判断结果,对所述请求执行对应的处理的步骤,包括:
3.如权利要求1所述的方法,其特征在于,所述代理服务中预先对服务端软件系统中被保护的数据进行路径映射的步骤,包括:
4.如权利要求3所述的方法,其特征在于,所述将权限信息写入数据访问策略库中,代理服务将请求中内容转为“a客户端 对 x 数据 有 y权限”的数据格式,并写入数据访问策略库。
5.如权利要求3所述的方法,其特征在于,所述数据授权策略库中维护了“a客户端 可以给 b客户端 授权 x数据 的 y权限”,代理服务加载数据授权策略库的全部内容进行下一步计算。
6.如权利要求3所述的方法,其特征在于,所述加载数据访问策略库中,数据访问策略库维护了“a客户端对x数据有y权限”,代理服务加载数据访问策略库的全部内容进行下一步计算。
7.如权利要求3所述的方法,其特征在于,所述对访问请求进行鉴权中,鉴权方式为将参数中请求的数据转为文件路径格式,并根据客户端身份信息以及文件路径格式数据,在数据访问策略库中寻找相关权限策略是否能匹配成功。
8.一种为服务端软件系统增加权限控制的装置,其特征在于,包括:
9.如权利要求8所述的装置,其特征在于,所述代理服务中预先对服务端软件系统中被保护的数据进行路径映射,具体包括: