一种Redis数据库访问权限控制方法及装置与流程

文档序号:26103355发布日期:2021-07-30 18:15阅读:来源:国知局

技术特征:

1.一种redis数据库访问权限控制方法,其特征在于,所述方法应用于redis服务器;所述方法包括:

通过与redis客户端已建立的连接,接收redis客户端发送的所述redis客户端被分配的访问密码;同一redis客户端通过不同的访问密码对所述redis数据库执行不同的权限控制;

在验证所述访问密码与已配置的访问密码相匹配后,从已配置的权限控制文件中获得所述访问密码对应的权限控制信息;所述权限控制信息至少包括:关键字命名规则;

当接收到所述redis客户端发送的访问请求时,校验所述访问请求携带的关键字是否符合所述关键字命名规则,如果否,禁止执行所述访问请求携带的操作指令对应的操作,如果是,允许执行所述访问请求携带的操作指令对应的操作。

2.如权利要求1所述的方法,其特征在于,所述关键字命名规则是基于所述redis客户端应用的业务场景设置,其中,不同业务场景下的关键字命名规则不同;

所述关键字命名规则要求关键字至少包括业务场景标识和自定义字符串,其中,业务场景标识在自定义字符串之前或者,业务场景标识在自定义字符串之后;

所述校验所述访问请求携带的关键字是否符合所述关键字命名规则包括:

校验所述访问请求携带的关键字是否按照所述关键字命名规则要求的关键字格式设置。

3.如权利要求1所述的方法,其特征在于,所述权限控制信息还包括:权限控制操作;

在允许执行所述访问请求携带的操作指令对应的操作之前进一步包括:校验所述访问请求携带的操作指令是否对应所述权限控制操作中允许执行的操作,当所述访问请求携带的操作指令对应所述权限控制操作中允许执行的操作时,返回允许执行所述访问请求携带的操作指令对应的操作;或者,

在校验所述访问请求携带的关键字是否符合所述关键字命名规则之前进一步包括:校验所述访问请求携带的操作指令是否对应所述权限控制操作中允许执行的操作,当所述访问请求携带的操作指令对应所述权限控制操作中允许执行的操作时,继续校验所述访问请求携带的关键字是否符合所述关键字命名规则。

4.如权利要求3所述的方法,其特征在于,当校验所述访问请求携带的关键字不符合所述关键字命名规则,或者,当校验所述访问请求携带的操作指令不对应所述权限控制操作中允许执行的操作时,该方法进一步包括:

返回所述redis客户端不具有权限的提示。

5.如权利要求1所述的方法,其特征在于,该方法之前进一步包括:

将所述redis客户端被分配的各访问密码发送给所述redis客户端;其中,同一redis客户端通过不同的访问密码对所述redis数据库执行的不同权限控制是依据redis客户端的身份信息确定的。

6.一种redis数据库访问权限控制装置,其特征在于,所述装置应用于redis服务器;所述装置包括:

接收模块,用于通过与redis客户端已建立的连接,接收redis客户端发送的所述redis客户端被分配的访问密码;同一redis客户端通过不同的访问密码对所述redis数据库执行不同的权限控制;

权限控制信息获取模块,用于在验证所述访问密码与已配置的访问密码相匹配后,从已配置的权限控制文件中获得所述访问密码对应的权限控制信息;所述权限控制信息至少包括:关键字命名规则;

关键字校验模块,用于当接收到所述redis客户端发送的访问请求时,校验所述访问请求携带的关键字是否符合所述关键字命名规则,如果否,禁止执行所述访问请求携带的操作指令对应的操作,如果是,允许执行所述访问请求携带的操作指令对应的操作。

7.如权利要求6所述的装置,其特征在于,所述关键字命名规则是基于所述redis客户端应用的业务场景设置,其中,不同业务场景下的关键字命名规则不同;

所述关键字命名规则要求关键字至少包括业务场景标识和自定义字符串,其中,业务场景标识在自定义字符串之前或者,业务场景标识在自定义字符串之后;

所述校验所述访问请求携带的关键字是否符合所述关键字命名规则包括:

校验所述访问请求携带的关键字是否按照所述关键字命名规则要求的关键字格式设置。

8.如权利要求6所述的装置,其特征在于,所述权限控制信息还包括:权限控制操作;所述装置还包括:

操作指令校验模块,

用于在允许执行所述访问请求携带的操作指令对应的操作之前,校验所述访问请求携带的操作指令是否对应所述权限控制操作中允许执行的操作,当所述访问请求携带的操作指令对应所述权限控制操作中允许执行的操作时,返回允许执行所述访问请求携带的操作指令对应的操作;

或者用于在校验所述访问请求携带的关键字是否符合所述关键字命名规则之前,校验所述访问请求携带的操作指令是否对应所述权限控制操作中允许执行的操作,当所述访问请求携带的操作指令对应所述权限控制操作中允许执行的操作时,继续校验所述访问请求携带的关键字是否符合所述关键字命名规则。

9.如权利要求8所述的装置,其特征在于,所述装置还包括:

提示模块,用于当校验所述访问请求携带的关键字不符合所述关键字命名规则,或者,当校验所述访问请求携带的操作指令不对应所述权限控制操作中允许执行的操作时,返回所述redis客户端不具有权限的提示。

10.如权利要求6所述的装置,其特征在于,所述装置还包括:

访问密码发送模块,用于在执行所述接收模块前,将所述redis客户端被分配的各访问密码发送给所述redis客户端;其中,同一redis客户端通过不同的访问密码对所述redis数据库执行的不同权限控制是依据redis客户端的身份信息确定的。


技术总结
本发明提供一种Redis数据库访问权限控制方法及装置,Redis客户端与Redis服务器建立连接后,会通过建立的连接向Redis服务器发送访问密码,然后Redis服务器从已配置的权限控制文件中获得与访问密码对应的权限控制信息。当Redis服务器接收到Redis发送访问请求后,校验访问请求中携带的关键字是否符合权限控制信息中的关键字命名规则,以及校验访问请求中携带的操作指令是否对应于权限控制操作允许执行的操作指令,如果校验都通过,允许执行访问请求携带的操作指令对应的操作;如果任一校验不通过,禁止执行访问请求中携带的操作指令对应的操作。

技术研发人员:宛清
受保护的技术使用者:新华三技术有限公司
技术研发日:2021.05.27
技术公布日:2021.07.30
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1