本申请涉及云计算,尤其涉及一种kubernetes环境的网络用户管理方法和装置。
背景技术:
1、在现有云计算领域中,kubernetes通过kube-proxy服务实现了service的对外发布及负载均衡,它的各种方式都是基于传输层实现的。在实际的互联网应用场景中,不仅要实现单纯的转发,还有更加细致的策略需求,如果使用真正的负载均衡器更会增加操作的灵活性和转发性能。
2、基于以上需求,kubernetes引入了资源对象ingress,ingress为service提供了可直接被集群外部访问的虚拟主机、负载均衡、ssl代理、http路由等应用层转发功能。通常,web前后端服务部署在kubernetes容器内,通过ingress配置,用户可以完成web前端的访问,以及前端与后端的交互。对于普通的web服务来讲,用户在访问后端资源时,会利用邮箱或电话完成账号注册,并使用激活后的账号,登录web系统,完成资源的访问。常用的web登录有单点登录(singlesignon,sso),即用户登录一次,即可访问所有相互信任的应用系统;私有化登录方式,即仅仅生效与当前服务。
3、针对web服务的不同场景,web服务可以选择私有化登录方式或者接入sso。服务仅支持sso登录或者私有化登录中的一种,如果需要同时支持两种登录方式,且共享用户系统,则需要部署两套前后端系统,并能够共享用户信息,以及rbac权限信息。这样的方式开发复杂度高,且维护成本高。此外,对于用户数据的维护由两套独立的系统来进行,没有进行统一管理,造成资源浪费和管理效率低下。
技术实现思路
1、本申请实施例提供一种kubernetes环境的网络用户管理方法和装置,能够解决现有技术中web服务的开发复杂度高且管理效率低下的问题。
2、本申请实施例的第一方面,提供一种kubernetes环境的网络用户管理方法,该方法包括:
3、创建系统,所述系统包括一套后端系统和两套前端系统,所述两套前端系统包括第一前端和第二前端,所述第一前端用于承接sso用户注册和登录,所述第二前端用于承接私有化用户注册和登录;
4、接收用户的登录输入,确定当前运行环境;
5、在所述运行环境为sso环境时,通过所述第一前端调用所述后端系统,获取统一认证用户信息并将所述统一认证用户信息同步至网络服务器;
6、在所述运行环境为私有化环境时,通过所述第二前端调用所述后端系统,获取用户的用户名和密码,将用户的登录信息保存至所述网络服务器。
7、可选地,所述方法还包括:
8、在用户通过所述第一前端或者所述第二前端登录后,共享所述网络服务器的用户信息和rbac权限校验。
9、可选地,所述方法还包括:
10、在所述运行环境为sso环境时,通过中心认证服务进行安全认证;
11、在所述运行环境为私有化环境时,通过jwt方式进行完全认证。
12、可选地,所述创建系统,所述系统包括一套后端系统和两套前端系统,所述两套前端系统包括第一前端和第二前端,所述第一前端用于承接sso用户注册和登录,所述第二前端用于承接私有化用户注册和登录包括:
13、生成一套后端代码和一套前端代码;
14、针对所述前端代码构建docker镜像,设置部署场景为sso环境或者私有化环境,以生成所述第一前端和所述第二前端;
15、其中,所述第一前端和所述第二前端共用所述后端的接口。
16、可选地,所述第一前端和所述第二前端通过nginx与所述后端接口连接。
17、第二方面,提供一种kubernetes环境的网络用户管理装置,该装置包括:
18、系统创建模块,用于创建系统,所述系统包括一套后端系统和两套前端系统,所述两套前端系统包括第一前端和第二前端,所述第一前端用于承接sso用户注册和登录,所述第二前端用于承接私有化用户注册和登录;
19、运行环境确定模块,用于接收用户的登录输入,确定当前运行环境;
20、sso调用模块,用于在所述运行环境为sso环境时,通过所述第一前端调用所述后端系统,获取统一认证用户信息并将所述统一认证用户信息同步至网络服务器;
21、私有化调用模块,用于在所述运行环境为私有化环境时,通过所述第二前端调用所述后端系统,获取用户的用户名和密码,将用户的登录信息保存至所述网络服务器。
22、可选地,所述装置还包括:
23、用户信息共享模块,用于在用户通过所述第一前端或者所述第二前端登录后,共享所述网络服务器的用户信息和rbac权限校验。
24、可选地,所述装置还包括安全认证模块,用于:
25、在所述运行环境为sso环境时,通过中心认证服务进行安全认证;
26、在所述运行环境为私有化环境时,通过jwt方式进行完全认证。
27、可选地,所述系统创建模块包括:
28、代码生成子模块,用于生成一套后端代码和一套前端代码;
29、场景部署子模块,用于针对所述前端代码构建docker镜像,设置部署场景为sso环境或者私有化环境,以生成所述第一前端和所述第二前端;
30、其中,所述第一前端和所述第二前端共用所述后端的接口。
31、可选地,所述第一前端和所述第二前端通过nginx与所述后端接口连接。
32、本申请实施例提供的一种kubernetes环境的网络用户管理方法,通过创建系统,所述系统包括一套后端系统和两套前端系统,所述两套前端系统包括第一前端和第二前端,所述第一前端用于承接sso用户注册和登录,所述第二前端用于承接私有化用户注册和登录;创建系统后,通过该系统接收用户的登录输入,确定当前运行环境;在所述运行环境为sso环境时,通过所述第一前端调用所述后端系统,获取统一认证用户信息并将所述统一认证用户信息同步至网络服务器;在所述运行环境为私有化环境时,通过所述第二前端调用所述后端系统,获取用户的用户名和密码,将用户的登录信息保存至所述网络服务器。本申请提出的kubernetes环境的网络用户管理方法,可以灵活的针对多场景,从而同时满足业务上的sso登录以及私有化的登录需求及rbac管理。通过这种方法,可以解决多套环境部署带来的开发运维复杂、用户数据管理不统一的问题。
1.一种kubernetes环境的网络用户管理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的一种kubernetes环境的网络用户管理方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的一种kubernetes环境的网络用户管理方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的一种kubernetes环境的网络用户管理方法,其特征在于,所述创建系统,所述系统包括一套后端系统和两套前端系统,所述两套前端系统包括第一前端和第二前端,所述第一前端用于承接sso用户注册和登录,所述第二前端用于承接私有化用户注册和登录包括:
5.根据权利要求4所述的一种kubernetes环境的网络用户管理方法,其特征在于,所述第一前端和所述第二前端通过nginx与所述后端接口连接。
6.一种kubernetes环境的网络用户管理装置,其特征在于,所述装置包括:
7.根据权利要求6所述的一种kubernetes环境的网络用户管理装置,其特征在于,所述装置还包括:
8.根据权利要求6所述的一种kubernetes环境的网络用户管理装置,其特征在于,所述装置还包括安全认证模块,用于:
9.根据权利要求6所述的一种kubernetes环境的网络用户管理装置,其特征在于,所述系统创建模块包括:
10.根据权利要求9所述的一种kubernetes环境的网络用户管理装置,其特征在于,所述第一前端和所述第二前端通过nginx与所述后端接口连接。