微服务访问方法、装置、设备及存储介质转让专利
申请号 : CN202011476001.5
文献号 : CN112615849B
文献日 : 2022-04-26
发明人 : 陈忠平
申请人 : 平安科技(深圳)有限公司
摘要 :
权利要求 :
1.一种微服务访问方法,其特征在于,所述微服务访问方法包括:通过预设微服务网关拦截微服务访问请求,得到访问请求地址和目标用户令牌,所述预设微服务网关为基于预设路由过滤对象实现的请求拦截器;
获取当前时刻和目标用户令牌的过期时刻,并判断所述过期时刻是否大于所述当前时刻;
若所述过期时刻小于或者等于所述当前时刻,则获取新的用户令牌,按照所述新的用户令牌向目标权限管理服务发送权限获取请求,得到目标用户权限列表,并根据所述新的用户令牌将所述目标用户权限列表写入至内存数据库中的会话信息,所述目标权限管理服务用于指示对多个租户进行微服务授权操作;
若所述过期时刻大于所述当前时刻,则根据所述目标用户令牌查询内存数据库中的会话信息,得到租户标识值和缓存的权限列表数据,判断所述缓存的权限列表数据中是否存在所述访问请求地址;
若所述缓存的权限列表数据中不存在所述访问请求地址,则按照所述目标用户令牌和所述租户标识值生成操作日志信息,获取并展示警示信息,所述警示信息用于指示微服务访问请求受限;
若所述缓存的权限列表数据中存在所述访问请求地址,则基于所述租户标识值确定目标微服务集群,按照所述访问请求地址对所述目标微服务集群中的目标系统微服务进行访问,得到访问结果。
2.根据权利要求1所述的微服务访问方法,其特征在于,所述通过预设微服务网关拦截微服务访问请求,得到访问请求地址和目标用户令牌,所述预设微服务网关为基于预设路由过滤对象实现的请求拦截器,包括:接收微服务访问请求,通过预设微服务网关拦截并解析所述微服务访问请求,得到请求头信息,所述预设微服务网关为基于预设路由过滤对象zuulfilter实现的请求拦截器;
按照预设参数名从所述请求头信息中读取访问请求地址和目标用户令牌,所述目标用户令牌为用户成功登录微服务时设置的字符串。
3.根据权利要求1所述的微服务访问方法,其特征在于,所述若所述过期时刻小于或者等于所述当前时刻,则获取新的用户令牌,按照所述新的用户令牌向目标权限管理服务发送权限获取请求,得到目标用户权限列表,并根据所述新的用户令牌将所述目标用户权限列表写入至内存数据库中的会话信息,所述目标权限管理服务用于指示对多个租户进行微服务授权操作,包括:
若所述过期时刻小于或者等于所述当前时刻,则调用预设登录页面引导用户重新登录,得到登录结果;
当所述登录结果为预设值时,确定用户登录成功,并获取新的用户令牌和用户的会话信息,将所述新的用户令牌和所述用户的会话信息关联映射并存储至内存数据库中;
按照所述新的用户令牌从所述用户的会话信息中获取用户唯一标识和租户标识值,并基于所述用户唯一标识和所述租户标识值向目标权限管理服务发送权限获取请求,以使得所述目标权限管理服务按照所述用户唯一标识和所述租户标识值查找并返回目标用户权限列表,所述目标权限管理服务用于指示对多个租户进行微服务授权操作;
接收所述目标用户权限列表,基于所述新的用户令牌将所述目标用户权限列表更新至所述内存数据库中的会话信息,得到更新结果,并根据所述更新结果确定是否发送所述微服务访问请求。
4.根据权利要求1所述的微服务访问方法,其特征在于,所述若所述过期时刻大于所述当前时刻,则根据所述目标用户令牌查询内存数据库中的会话信息,得到租户标识值和缓存的权限列表数据,判断所述缓存的权限列表数据中是否存在所述访问请求地址,包括:若所述过期时刻大于所述当前时刻,则将所述目标用户令牌设置为目标键,按照所述目标键查询内存数据库中的会话信息,得到目标值,所述会话信息为用户首次登录时调用预设权限服务获取的用户权限列表数据;
当所述目标值不为空值时,从所述目标值中获取租户标识值和缓存的权限列表数据;
调用预设查找函数按照所述访问请求地址检索所述缓存的权限列表数据,得到检索结果;
若所述检索结果不为预设目标值,则确定所述缓存的权限列表数据中不存在所述访问请求地址,生成提示信息,所述提示信息用于指示所述微服务访问请求存在异常;
若所述检索结果为预设目标值,则确定所述缓存的权限列表数据中存在所述访问请求地址。
5.根据权利要求1所述的微服务访问方法,其特征在于,所述若所述缓存的权限列表数据中不存在所述访问请求地址,则按照所述目标用户令牌和所述租户标识值生成操作日志信息,获取并展示警示信息,所述警示信息用于指示微服务访问请求受限,包括:若所述缓存的权限列表数据中不存在所述访问请求地址,则按照所述目标用户令牌和所述租户标识值生成操作日志信息,并将所述操作日志信息更新至所述内存数据库中;
按照预设模板生成警示信息,通过预设提示框对所述警示信息进行显示,所述警示信息用于指示微服务访问请求受限。
6.根据权利要求1所述的微服务访问方法,其特征在于,所述若所述缓存的权限列表数据中存在所述访问请求地址,则基于所述租户标识值确定目标微服务集群,按照所述访问请求地址对所述目标微服务集群中的目标系统微服务进行访问,得到访问结果,包括:若所述缓存的权限列表数据中存在所述访问请求地址,则基于所述租户标识值查询预设数据表,得到目标微服务集群,所述目标微服务集群用于指示系统微服务所属容器的列表数据;
获取随机数,并按照所述随机数对系统微服务所属容器数量进行取余,得到目标余数;
将所述目标余数设置为系统微服务所属容器的索引,按照所述访问请求地址和所述系统微服务所属容器的索引对所述目标微服务集群中的目标系统微服务进行服务调用,得到访问结果,所述访问结果包括访问成功和访问失败。
7.根据权利要求1‑6中任意一项所述的微服务访问方法,其特征在于,在所述通过预设微服务网关拦截微服务访问请求,得到访问请求地址和目标用户令牌,所述预设微服务网关为基于预设路由过滤对象实现的请求拦截器之前,所述微服务访问方法还包括:通过所述目标权限管理服务新增租户,并对所述租户配置对应的租户信息;
获取包含多个用户信息的配置文件,并将所述配置文件导入至所述目标权限管理服务中,以使得多个用户信息分别与所述租户进行关联绑定;
对所述租户新增至少一个系统微服务,对每个系统微服务新建资源项信息,所述资源项信息包括菜单资源和界面按钮;
对所述租户创建角色树,对所述角色树中的每个角色设置所述资源项信息,并将所述角色树中的角色数据分配至与所述租户关联绑定的多个用户。
8.一种微服务访问装置,其特征在于,所述微服务访问装置包括:拦截模块,用于通过预设微服务网关拦截微服务访问请求,得到访问请求地址和目标用户令牌,所述预设微服务网关为基于预设路由过滤对象实现的请求拦截器;
判断模块,用于获取当前时刻和目标用户令牌的过期时刻,并判断所述过期时刻是否大于所述当前时刻;
写入模块,若所述过期时刻小于或者等于所述当前时刻,则用于获取新的用户令牌,按照所述新的用户令牌向目标权限管理服务发送权限获取请求,得到目标用户权限列表,并根据所述新的用户令牌将所述目标用户权限列表写入至内存数据库中的会话信息,所述目标权限管理服务用于指示对多个租户进行微服务授权操作;
查询模块,若所述过期时刻大于所述当前时刻,则用于根据所述目标用户令牌查询内存数据库中的会话信息,得到租户标识值和缓存的权限列表数据,判断所述缓存的权限列表数据中是否存在所述访问请求地址;
处理模块,若所述缓存的权限列表数据中不存在所述访问请求地址,则用于按照所述目标用户令牌和所述租户标识值生成操作日志信息,获取并展示警示信息,所述警示信息用于指示微服务访问请求受限;
访问模块,若所述缓存的权限列表数据中存在所述访问请求地址,则用于基于所述租户标识值确定目标微服务集群,按照所述访问请求地址对所述目标微服务集群中的目标系统微服务进行访问,得到访问结果。
9.一种微服务访问设备,其特征在于,所述微服务访问设备包括:存储器和至少一个处理器,所述存储器中存储有指令;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述微服务访问设备执行如权利要求1‑7中任意一项所述的微服务访问方法。
10.一种计算机可读存储介质,其上存储有指令,其特征在于,所述指令被处理器执行时实现如权利要求1‑7中任意一项所述的微服务访问方法。
说明书 :
微服务访问方法、装置、设备及存储介质
技术领域
背景技术
开发对应的权限管理模块。
配。同时由于权限缺乏统一的管理,当一个系统具有多个子微服务时,每个子微服务之间需
要进行权限数据的同步,容易引起权限数据的不一致。并且每一个子服务都需要执行权限
校验规则,每一个子微服务在接入权限时都需要投入大量开发测试,导致微服务集群的权
限验证效率低和微服务访问准确率低的问题。
发明内容
为基于预设路由过滤对象实现的请求拦截器;获取当前时刻和目标用户令牌的过期时刻,
并判断所述过期时刻是否大于所述当前时刻;若所述过期时刻小于或者等于所述当前时
刻,则获取新的用户令牌,按照所述新的用户令牌向目标权限管理服务发送权限获取请求,
得到目标用户权限列表,并根据所述新的用户令牌将所述目标用户权限列表写入至内存数
据库中的会话信息,所述目标权限管理服务用于指示对多个租户进行微服务授权操作;若
所述过期时刻大于所述当前时刻,则根据所述目标用户令牌查询内存数据库中的会话信
息,得到租户标识值和缓存的权限列表数据,判断所述缓存的权限列表数据中是否存在所
述访问请求地址;若所述缓存的权限列表数据中不存在所述访问请求地址,则按照所述目
标用户令牌和所述租户标识值生成操作日志信息,获取并展示警示信息,所述警示信息用
于指示微服务访问请求受限;若所述缓存的权限列表数据中存在所述访问请求地址,则基
于所述租户标识值确定目标微服务集群,按照所述访问请求地址对所述目标微服务集群中
的目标系统微服务进行访问,得到访问结果。
由过滤对象实现的请求拦截器,包括:接收微服务访问请求,通过预设微服务网关拦截并解
析所述微服务访问请求,得到请求头信息,所述预设微服务网关为基于预设路由过滤对象
zuulfilter实现的请求拦截器;按照预设参数名从所述请求头信息中读取访问请求地址和
目标用户令牌,所述目标用户令牌为用户成功登录微服务时设置的字符串。
送权限获取请求,得到目标用户权限列表,并根据所述新的用户令牌将所述目标用户权限
列表写入至内存数据库中的会话信息,所述目标权限管理服务用于指示对多个租户进行微
服务授权操作,包括:若所述过期时刻小于或者等于所述当前时刻,则调用预设登录页面引
导用户重新登录,得到登录结果;当所述登录结果为预设值时,确定用户登录成功,并获取
新的用户令牌和用户的会话信息,将所述新的用户令牌和所述用户的会话信息关联映射并
存储至内存数据库中;按照所述新的用户令牌从所述用户的会话信息中获取用户唯一标识
和租户标识值,并基于所述用户唯一标识和所述租户标识值向目标权限管理服务发送权限
获取请求,以使得所述目标权限管理服务按照所述用户唯一标识和所述租户标识值查找并
返回目标用户权限列表,所述目标权限管理服务用于指示对多个租户进行微服务授权操
作;接收所述目标用户权限列表,基于所述新的用户令牌将所述目标用户权限列表更新至
所述内存数据库中的会话信息,得到更新结果,并根据所述更新结果确定是否发送所述微
服务访问请求。
存的权限列表数据,判断所述缓存的权限列表数据中是否存在所述访问请求地址,包括:若
所述过期时刻大于所述当前时刻,则将所述目标用户令牌设置为目标键,按照所述目标键
查询内存数据库中的会话信息,得到目标值,所述会话信息为用户首次登录时调用预设权
限服务获取的用户权限列表数据;当所述目标值不为空值时,从所述目标值中获取租户标
识值和缓存的权限列表数据;调用预设查找函数按照所述访问请求地址检索所述缓存的权
限列表数据,得到检索结果;若所述检索结果不为预设目标值,则确定所述缓存的权限列表
数据中不存在所述访问请求地址,生成提示信息,所述提示信息用于指示所述微服务访问
请求存在异常;若所述检索结果为预设目标值,则确定所述缓存的权限列表数据中存在所
述访问请求地址。
信息,获取并展示警示信息,所述警示信息用于指示微服务访问请求受限,包括:若所述缓
存的权限列表数据中不存在所述访问请求地址,则按照所述目标用户令牌和所述租户标识
值生成操作日志信息,并将所述操作日志信息更新至所述内存数据库中;按照预设模板生
成警示信息,通过预设提示框对所述警示信息进行显示,所述警示信息用于指示微服务访
问请求受限。
请求地址对所述目标微服务集群中的目标系统微服务进行访问,得到访问结果,包括:若所
述缓存的权限列表数据中存在所述访问请求地址,则基于所述租户标识值查询预设数据
表,得到目标微服务集群,所述目标微服务集群用于指示系统微服务所属容器的列表数据;
获取随机数,并按照所述随机数对系统微服务所属容器数量进行取余,得到目标余数;将所
述目标余数设置为系统微服务所属容器的索引,按照所述访问请求地址和所述系统微服务
所属容器的索引对所述目标微服务集群中的目标系统微服务进行服务调用,得到访问结
果,所述访问结果包括访问成功和访问失败。
路由过滤对象实现的请求拦截器之前,所述微服务访问方法还包括:通过所述目标权限管
理服务新增租户,并对所述租户配置对应的租户信息;获取包含多个用户信息的配置文件,
并将所述配置文件导入至所述目标权限管理服务中,以使得多个用户信息分别与所述租户
进行关联绑定;对所述租户新增至少一个系统微服务,对每个系统微服务新建资源项信息,
所述资源项信息包括菜单资源和界面按钮;对所述租户创建角色树,对所述角色树中的每
个角色设置所述资源项信息,并将所述角色树中的角色数据分配至与所述租户关联绑定的
多个用户。
基于预设路由过滤对象实现的请求拦截器;判断模块,用于获取当前时刻和目标用户令牌
的过期时刻,并判断所述过期时刻是否大于所述当前时刻;写入模块,若所述过期时刻小于
或者等于所述当前时刻,则用于获取新的用户令牌,按照所述新的用户令牌向目标权限管
理服务发送权限获取请求,得到目标用户权限列表,并根据所述新的用户令牌将所述目标
用户权限列表写入至内存数据库中的会话信息,所述目标权限管理服务用于指示对多个租
户进行微服务授权操作;查询模块,若所述过期时刻大于所述当前时刻,则用于根据所述目
标用户令牌查询内存数据库中的会话信息,得到租户标识值和缓存的权限列表数据,判断
所述缓存的权限列表数据中是否存在所述访问请求地址;处理模块,若所述缓存的权限列
表数据中不存在所述访问请求地址,则用于按照所述目标用户令牌和所述租户标识值生成
操作日志信息,获取并展示警示信息,所述警示信息用于指示微服务访问请求受限;访问模
块,若所述缓存的权限列表数据中存在所述访问请求地址,则用于基于所述租户标识值确
定目标微服务集群,按照所述访问请求地址对所述目标微服务集群中的目标系统微服务进
行访问,得到访问结果。
述预设微服务网关为基于预设路由过滤对象zuulfilter实现的请求拦截器;按照预设参数
名从所述请求头信息中读取访问请求地址和目标用户令牌,所述目标用户令牌为用户成功
登录微服务时设置的字符串。
结果;当所述登录结果为预设值时,确定用户登录成功,并获取新的用户令牌和用户的会话
信息,将所述新的用户令牌和所述用户的会话信息关联映射并存储至内存数据库中;按照
所述新的用户令牌从所述用户的会话信息中获取用户唯一标识和租户标识值,并基于所述
用户唯一标识和所述租户标识值向目标权限管理服务发送权限获取请求,以使得所述目标
权限管理服务按照所述用户唯一标识和所述租户标识值查找并返回目标用户权限列表,所
述目标权限管理服务用于指示对多个租户进行微服务授权操作;接收所述目标用户权限列
表,基于所述新的用户令牌将所述目标用户权限列表更新至所述内存数据库中的会话信
息,得到更新结果,并根据所述更新结果确定是否发送所述微服务访问请求。
内存数据库中的会话信息,得到目标值,所述会话信息为用户首次登录时调用预设权限服
务获取的用户权限列表数据;当所述目标值不为空值时,从所述目标值中获取租户标识值
和缓存的权限列表数据;调用预设查找函数按照所述访问请求地址检索所述缓存的权限列
表数据,得到检索结果;若所述检索结果不为预设目标值,则确定所述缓存的权限列表数据
中不存在所述访问请求地址,生成提示信息,所述提示信息用于指示所述微服务访问请求
存在异常;若所述检索结果为预设目标值,则确定所述缓存的权限列表数据中存在所述访
问请求地址。
识值生成操作日志信息,并将所述操作日志信息更新至所述内存数据库中;按照预设模板
生成警示信息,通过预设提示框对所述警示信息进行显示,所述警示信息用于指示微服务
访问请求受限。
得到目标微服务集群,所述目标微服务集群用于指示系统微服务所属容器的列表数据;获
取随机数,并按照所述随机数对系统微服务所属容器数量进行取余,得到目标余数;将所述
目标余数设置为系统微服务所属容器的索引,按照所述访问请求地址和所述系统微服务所
属容器的索引对所述目标微服务集群中的目标系统微服务进行服务调用,得到访问结果,
所述访问结果包括访问成功和访问失败。
入模块,用于获取包含多个用户信息的配置文件,并将所述配置文件导入至所述目标权限
管理服务中,以使得多个用户信息分别与所述租户进行关联绑定;新增模块,用于对所述租
户新增至少一个系统微服务,对每个系统微服务新建资源项信息,所述资源项信息包括菜
单资源和界面按钮;分配模块,用于对所述租户创建角色树,对所述角色树中的每个角色设
置所述资源项信息,并将所述角色树中的角色数据分配至与所述租户关联绑定的多个用
户。
微服务访问设备执行上述的微服务访问方法。
器;获取当前时刻和目标用户令牌的过期时刻,并判断所述过期时刻是否大于所述当前时
刻;若所述过期时刻小于或者等于所述当前时刻,则获取新的用户令牌,按照所述新的用户
令牌向目标权限管理服务发送权限获取请求,得到目标用户权限列表,并根据所述新的用
户令牌将所述目标用户权限列表写入至内存数据库中的会话信息,所述目标权限管理服务
用于指示对多个租户进行微服务授权操作;若所述过期时刻大于所述当前时刻,则根据所
述目标用户令牌查询内存数据库中的会话信息,得到租户标识值和缓存的权限列表数据,
判断所述缓存的权限列表数据中是否存在所述访问请求地址;若所述缓存的权限列表数据
中不存在所述访问请求地址,则按照所述目标用户令牌和所述租户标识值生成操作日志信
息,获取并展示警示信息,所述警示信息用于指示微服务访问请求受限;若所述缓存的权限
列表数据中存在所述访问请求地址,则基于所述租户标识值确定目标微服务集群,按照所
述访问请求地址对所述目标微服务集群中的目标系统微服务进行访问,得到访问结果。本
发明实施例中,通过预设微服务网关拦截微服务访问请求,得到访问请求地址和目标用户
令牌;在用户令牌过期后按照新的用户令牌向目标权限管理服务获取并缓存目标用户权限
列表;在过期时刻内基于租户标识值确定目标微服务集群,按照访问请求地址对目标微服
务集群中的系统微服务进行访问,提高了微服务集群的权限验证效率和微服务访问准确
率。
附图说明
具体实施方式
微服务进行访问,提高微服务集群的权限验证效率和微服务访问准确率。
解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示
或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不
排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚
地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设
备固有的其它步骤或单元。
进行认证校验。具体的,终端通过预设微服务网关拦截终端发送的微服务访问请求;终端从
微服务访问请求中提取对应的访问请求地址url与目标用户令牌token。
time())生成当前时刻;终端按照目标用户令牌从预设数据配置表中读取目标用户令牌的
过期时刻;终端将过期时刻与当前时刻进行差运算,得到差值;终端判断差值是否大于0;若
差值大于0,则终端确定过期时刻大于当前时刻,并执行步骤104;若差值小于或者等于0,则
终端确定过期时刻小于或者等于当前时刻,并执行步骤103。
将目标用户权限列表写入至内存数据库中的会话信息,目标权限管理服务用于指示对多个
租户进行微服务授权操作。
牌对返回的用户权限列表重新写入至内存数据库的会话信息中。也就是,终端在内存数据
库中查找token有权限的url中是否包含当前请求的url,如果包含则路由到对应的微服务
上。由于内存数据库具有过期时刻,当终端检测到过期时刻小于或者等于当前时刻时,终端
从目标权限管理服务加载并缓存该用户的权限列表。目标权限管理服务根据token识别对
应的用户及该用户对应的租户,进而查询出该用户的权限列表返给网关服务。其中,目标权
限管理服务为基于预设框架springboot构建的微服务。
求地址。
令牌,终端将其存储至内存数据库中,其中,会话信息包括权限列表数据。终端每次发送微
服务访问请求中都包含目标用户令牌,目标用户令牌用于指示用户的唯一标识信息。拦截
器通过验证目标用户令牌和访问请求地址验证每个微服务访问请求并建立安全上下文。安
全上下文描述了用户主体及其角色,终端使用安全上下文来获取用户在内存数据库中的会
话信息,并从会话信息读取目标用户令牌对应的租户标识值和缓存的权限资源列表。
端将内存数据库进行数据持久化处理或者数据备份处理,以防止数据丢失,确保数据的安
全性。然后终端从内存数据库中获取预设模板,终端根据预设模板生成警示信息,警示信息
用于指示微服务访问请求受限(也就是,用户不具有访问权限)。
结果。
对应的系统服务群。可以理解的是,预设系统服务中的每张表都存在一个字段tenantId(租
户标识值),用于标记该数据的所属租户,微服务访问请求在鉴权以后需要携带该字段作为
微服务访问条件,预设系统服务中的所有数据都标记了所属租户。
标用户权限列表;在过期时刻内基于租户标识值确定目标微服务集群,按照访问请求地址
对目标微服务集群中的系统微服务进行访问,提高了微服务集群的权限验证效率和微服务
访问准确率。
管理服务中,以使得多个用户信息分别与租户进行关联绑定;终端对租户新增至少一个系
统微服务,对每个系统微服务新建资源项信息,资源项信息包括菜单资源和界面按钮;终端
对租户创建角色树,对角色树中的每个角色设置资源项信息,并将角色树中的角色数据分
配至与租户关联绑定的多个用户。也就是,终端通过目标权限服务进行租户和用户对微服
务访问的权限控制,并且,租户与用户为一对多关系,目标权限服务可管理多个租户。
具体此处不做限定;然后终端预先部署与预设微服务网关的程序包;其次终端预先部署基
于对象关系型数据库管理系统pgsql的数据库集群,以便于作为权限管理服务的数据库;最
后终端部署预先配置的权限服务程序包。
将目标用户权限列表写入至内存数据库中的会话信息,目标权限管理服务用于指示对多个
租户进行微服务授权操作。
Control,RBAC)模型上增加了租户的概念,一个业务系统为一个租户可以包含多个微服务,
包含一套权限数据,不同租户的权限控制数据完全隔离,在登陆时建立token与租户的关
系。权限类型分为操作权限、管理权限和授权权限,其中,操作权限用于控制url、界面按钮
与元素的访问与调用,返给网关的权限列表就只有操作权限。管理权限用于对url自身的管
理如新增、删除、修改等。授权权限用于控制对操作、管理权限的授予控制。目标权限管理服
务在实际获取权限列表时,通过token从会话中查询出对应的用户与租户,再获取用户在该
租户中的角色列表,根据角色列表查询权限列表。
户令牌和用户的会话信息,将新的用户令牌和用户的会话信息关联映射并存储至内存数据
库中;终端按照新的用户令牌从用户的会话信息中获取用户唯一标识和租户标识值,并基
于用户唯一标识和租户标识值向目标权限管理服务发送权限获取请求,以使得目标权限管
理服务按照用户唯一标识和租户标识值查找并返回目标用户权限列表,目标权限管理服务
用于指示对多个租户进行微服务授权操作;终端接收目标用户权限列表,基于新的用户令
牌将目标用户权限列表更新至内存数据库中的会话信息,得到更新结果,并根据更新结果
确定是否发送微服务访问请求。
求地址。
业务问题。其中,缓存的权限列表数据包括用户对应的租户、拥有所有权限的角色标识和所
有权限的资源标识。可选的,当用户初次登录微服务时,目标权限管理服务根据用户名查询
用户信息,用户信息包含该用户的所属租户标识值,然后再从用户角色关系表和角色资源
关系表分别查询具有权限的所有角色标识、资源标识与url,,然后终端将这些信息保存到
用户的会话信息中,得到缓存的权限列表数据。
限服务获取的用户权限列表数据,也就是,终端将权限列表数据存到当前的会话session
中,缓存数据的过期与session保持一致。当目标值不为空值时,终端从目标值中获取租户
标识值和缓存的权限列表数据;终端调用预设查找函数按照访问请求地址检索缓存的权限
列表数据,得到检索结果;若检索结果不为预设目标值,则终端确定缓存的权限列表数据中
不存在访问请求地址,终端生成提示信息,提示信息用于指示微服务访问请求存在异常;若
检索结果为预设目标值,则终端确定缓存的权限列表数据中存在访问请求地址。
户令牌和租户标识值生成操作日志信息,并将操作日志信息更新至内存数据库中;终端按
照预设模板生成警示信息,通过预设提示框对警示信息进行显示,警示信息用于指示微服
务访问请求受限。
结果。
而在目标权限管理服务中对应的租户下对应的系统微服务中新建权限资源关联该唯一编
号,并对权限资源进行角色赋权。终端将查询到的当前用户的具有权限资源列表返给终端,
终端根据资源列表进行权限控制。
表数据;终端获取随机数(例如,random()),并按照随机数对系统微服务所属容器数量进
行取余,得到目标余数;终端将目标余数设置为系统微服务所属容器的索引,按照访问请求
地址和系统微服务所属容器的索引对目标微服务集群中的目标系统微服务进行服务调用,
得到访问结果,访问结果包括访问成功和访问失败。例如,随机数为69,系统微服务所属容
器数量为10,则系统微服务所属容器的索引(目标余数)为9,服务器对索引为9的目标系统
微服务进行访问,得到访问结果。
标用户权限列表;在过期时刻内基于租户标识值确定目标微服务集群,按照访问请求地址
对目标微服务集群中的系统微服务进行访问,提高了微服务集群的权限验证效率和微服务
访问准确率。
新的用户令牌将目标用户权限列表写入至内存数据库中的会话信息,目标权限管理服务用
于指示对多个租户进行微服务授权操作;
否存在访问请求地址;
访问请求受限;
问,得到访问结果。
标用户权限列表;在过期时刻内基于租户标识值确定目标微服务集群,按照访问请求地址
对目标微服务集群中的系统微服务进行访问,提高了微服务集群的权限验证效率和微服务
访问准确率。
新的用户令牌将目标用户权限列表写入至内存数据库中的会话信息,目标权限管理服务用
于指示对多个租户进行微服务授权操作;
否存在访问请求地址;
访问请求受限;
问,得到访问结果。
服务按照用户唯一标识和租户标识值查找并返回目标用户权限列表,目标权限管理服务用
于指示对多个租户进行微服务授权操作;
的用户权限列表数据;
问结果包括访问成功和访问失败。
标用户权限列表;在过期时刻内基于租户标识值确定目标微服务集群,按照访问请求地址
对目标微服务集群中的系统微服务进行访问,提高了微服务集群的权限验证效率和微服务
访问准确率。
(central processing units,CPU)510(例如,一个或一个以上处理器)和存储器520,一个
或一个以上存储应用程序533或数据532的存储介质530(例如一个或一个以上海量存储设
备)。其中,存储器520和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程
序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对微服务访问设备500
中的一系列指令操作。更进一步地,处理器510可以设置为与存储介质530通信,在微服务访
问设备500上执行存储介质530中的一系列指令操作。
531,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。本领域技术人员可以理解,
图5示出的微服务访问设备结构并不构成对微服务访问设备的限定,可以包括比图示更多
或更少的部件,或者组合某些部件,或者不同的部件布置。
计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述
微服务访问方法的步骤。
微服务访问方法的步骤。
块链节点的使用所创建的数据等。
密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验
证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品
服务层以及应用服务层等。
或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式
体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机
设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全
部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read‑only memory,
ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序
代码的介质。
述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些
修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。