CN107222487A - 一种混合云环境的账号对接*** - Google Patents
一种混合云环境的账号对接*** Download PDFInfo
- Publication number
- CN107222487A CN107222487A CN201710449712.5A CN201710449712A CN107222487A CN 107222487 A CN107222487 A CN 107222487A CN 201710449712 A CN201710449712 A CN 201710449712A CN 107222487 A CN107222487 A CN 107222487A
- Authority
- CN
- China
- Prior art keywords
- account
- cloud environment
- user
- information
- sign
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种混合云环境的账号对接***,包括单点登录服务部分和账号同步部分,其中:单点登录服务部分,用于在接收到用户针对公有云环境的登录请求时,根据用户当前登录情况,确定是否允许用户直接登录公有云环境;账号同步部分,用于将私有云环境中的私有账号信息进行转换处理后存储到公有云环境的账号***中。应用本发明实施例所提供的技术方案,方便使用混合云环境的企业和机构对成员账号进行统一管理,可以减少管理成本,减轻维护账号的负担,用户不需额外注册,使用私有云环境的账号信息即可登录公有云环境,使用公有云服务,提高了工作效率。
Description
技术领域
本发明涉及计算机应用技术领域,特别是涉及一种混合云环境的账号对接***。
背景技术
随着云计算技术的发展,SaaS(Software-as-a-Service,软件即服务)服务也得到的快速发展。SaaS服务是一种典型的公有云服务,是一种通过网络提供软件的模式,所有的服务都托管在云上,不需要用户再购买软件,且无需对软件进行维护。用户只需要注册账号,成为会员即可享受其提供的服务。
大部分企业和机构具有各自的私有云环境,且在其私有云环境中已经存在一套账号***。如果同时使用公有云环境,其为了方便管理成员,希望能够直接使用私有云环境中的账号***进行统一管理。
如何实现混合云环境的账号对接,以便于企业和机构对账号进行统一管理是目前本领域技术人员亟需解决的技术问题。
发明内容
本发明的目的是提供一种混合云环境的账号对接***,以方便使用混合云环境的企业和机构对成员账号进行统一管理,减少管理成本,提高工作效率。
为解决上述技术问题,本发明提供如下技术方案:
一种混合云环境的账号对接***,包括单点登录服务部分和账号同步部分,其中:
所述单点登录服务部分,用于在接收到用户针对公有云环境的登录请求时,根据所述用户当前登录情况,确定是否允许所述用户直接登录所述公有云环境;
所述账号同步部分,用于将私有云环境中的私有账号信息进行转换处理后存储到所述公有云环境的账号***中。
在本发明的一种具体实施方式中,所述单点登录服务部分包括账号存储连接适配器、单点登录协议实现模块、账号解析逻辑模块、单点登录模块和域-存储映射表,其中,
所述账号存储连接适配器,用于连接所述私有云环境中的一个或多个账号存储***;
所述单点登录协议实现模块,用于通过所述账号存储连接适配器从相应的账号存储***中提取原始账号信息;
所述账号解析逻辑模块,用于接收所述单点登录协议实现模块发送的所述原始账号信息,将所述原始账号信息转换为结构化账号信息;
所述单点登录模块,用于接收所述账号解析逻辑模块返回的所述结构化账号信息,在接收到所述用户的登录请求时,根据所述结构化账号信息查询所述公有云环境的账号***中是否存在所述用户的用户记录,如果是,则设置所述用户的状态信息,并跳转到相应页面完成用户登录;
所述域-存储映射表,用于存储从域到所述私有云环境的账号存储***的映射关系。
在本发明的一种具体实施方式中,所述账号存储连接适配器具体用于根据所述私有云环境中的账号存储***的类型,选择对应连接方式连接所述私有云环境中的一个或多个账号存储***。
在本发明的一种具体实施方式中,所述单点登录协议实现模块包括集中式认证服务CAS子模块和/或安全断言标记语言SAML子模块。
在本发明的一种具体实施方式中,所述账号解析逻辑模块具体用于对所述原始账号信息进行预处理、过滤、校验和转换操作,获得所述原始账号信息对应的结构化账号信息。
在本发明的一种具体实施方式中,所述单点登录模块,还用于在接收到所述用户的登录请求时,如果确定所述用户未登录,则输出账号输入框,接收所述用户输入的账号信息,提取所述账号信息中的前缀或者后缀域信息,根据所述域信息确定所述账号信息对应的账号存储***。
在本发明的一种具体实施方式中,所述账号同步部分包括主动账号同步模块;
所述主动账号同步模块,用于根据接收到的调整指令,对所述公有云环境的账号***中的账号信息进行调整。
在本发明的一种具体实施方式中,所述账号同步部分还包括被动账号同步模块;
所述被动账号同步模块,用于在所述用户登录所述公有云环境时,根据所述私有云环境传递的账号信息,更新所述公有云环境的相应账号信息。
在本发明的一种具体实施方式中,所述账号同步部分还包括被动账号同步开关,用于控制所述被动账号同步模块是否启用。
在本发明的一种具体实施方式中,所述主动账号同步模块包括账号增量同步接口。
应用本发明实施例所提供的技术方案,混合云环境的账号对接***包括单点登录服务部分和账号同步部分,其中,单点登录服务部分用于在接收到用户针对公有云环境的登录请求时,根据用户当前登录情况,确定是否允许用户直接登录公有云环境,账号同步部分用于将私有云环境中的账号信息进行转换处理后存储到公有云环境的账号***中。这样方便使用混合云环境的企业和机构对成员账号进行统一管理,可以减少管理成本,减轻维护账号的负担,用户不需额外注册,使用私有云环境的账号信息即可登录公有云环境,使用公有云服务,提高了工作效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中混合云环境的账号对接***的一种结构示意图;
图2为本发明实施例中混合云环境的账号对接***的一种应用示意图;
图3为本发明实施例中混合云环境的账号对接***的另一种结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1所示,为本发明实施例所提供的一种混合云环境的账号对接***的结构示意图,该***包括单点登录服务部分100和账号同步部分200,其中:
单点登录服务部分100,用于在接收到用户针对公有云环境的登录请求时,根据用户当前登录情况,确定是否允许用户直接登录公有云环境;
账号同步部分200,用于将私有云环境中的私有账号信息进行转换处理后存储到公有云环境的账号***中。
本发明实施例主要针对已经拥有私有云环境账号,使用公有云服务的企业或机构。该企业或者机构成员无需重新注册,通过本发明实施例所提供的账号对接***可直接使用私有云环境中的私有账号进行单点登录,使用公有云服务。同时,通过本发明实施例所提供的账号对接***可以实现公有云环境与私有云环境中账号信息的同步更新。
在本发明实施例中,混合云环境的账号对接***具体可以由登录服务器实现,如图2所示,该登录服务器可以部署在私有云环境中,其能够访问私有云环境中的账号存储***,如数据库、域控服务器等,同时能够访问公有云环境中的账号***。
本发明实施例所提供的混合云环境的账号对接***包括单点登录服务部分100和账号同步部分200。
单点登录(Single Sign On,SSO),是指在多个应用***中,用户只需要登录一次就可以访问所有相互信任的应用***,包括将当前主要的登录映射到其他应用中用于同一个用户的登录的机制。
在本发明实施例中,单点登录服务部分100用于处理用户的登录请求,在接收到用户针对公有云环境的登录请求时,根据用户当前登录情况,确定是否允许用户直接登录公有云环境。
如图3所示,在本发明的一种具体实施方式中,单点登录服务部分100包括账号存储连接适配器110、单点登录协议实现模块120、账号解析逻辑模块130、单点登录模块140和域-存储映射表150,其中,
账号存储连接适配器110,用于连接私有云环境中的一个或多个账号存储***;
单点登录协议实现模块120,用于通过账号存储连接适配器110从相应的账号存储***中提取原始账号信息;
账号解析逻辑模块130,用于接收单点登录协议实现模块120发送的原始账号信息,将原始账号信息转换为结构化账号信息;
单点登录模块140,用于接收账号解析逻辑模块130返回的结构化账号信息,在接收到用户的登录请求时,根据结构化账号信息查询公有云环境的账号***中是否存在用户的用户记录,如果是,则设置用户的状态信息,并跳转到相应页面完成用户登录;
域-存储映射表150,用于存储从域到私有云环境的账号存储***的映射关系。
在本发明实施例中,单点登录服务部分100从下至上可以包括账号存储连接适配器110、单点登录协议实现模块120、账号解析逻辑模块130、单点登录模块140和域-存储映射表150。
账号存储连接适配器110用于连接私有云环境中的一个或多个账号存储***。私有云环境中的账号存储***可以有一个或多个,类型可以相同或不同,如可以为数据库、LDAP(Lightweight Directory Access Protocol,轻量目录访问协议)/Active Directory(活动目录)等类型。也就是说,同一企业或机构可以同时支持一种或者多种账号存储***,对于一种账号存储***还可以同时支持多个实例。例如:某企业的私有云环境支持账号存储在M个数据库中和N个LDAP/Active Directory中,其中,M和N满足条件:M、N都为自然数,并且M+N大于等于1。
账号存储连接适配器110具体可以根据私有云环境中的账号存储***的类型,选择对应连接方式连接私有云环境中的一个或多个账号存储***。即账号存储连接适配器110根据不同的账号存储***选择不同的连接方式。如对于数据库其可以选择对应的数据库驱动程序,对于LDAP/Active Directory其可以使用开源程序库ldaptive实现连接。
账号存储连接适配器110可以被上层调用,从相应账号存储***中读取账号信息。
单点登录协议实现模块120用于通过账号存储连接适配器110从相应账号存储***中提取原始账号信息。单点登录协议实现模块120可以包括一系列的单点登录协议子模块,如可以包括支持CAS(Central Authentication Service,集中式认证服务)单点登录协议的CAS子模块和/或支持SAML(Security Assertion Markup Language,安全断言标记语言)单点登录协议的SAML子模块。当然,也支持扩展其他单点登录协议实现。
CAS单点登录协议,是一种针对万维网的单点登录协议,由耶鲁大学发明,现在由Jasig组织维护和发展。SAML单点登录协议,是一个基于XML的开源标准数据格式。
对同一企业或者机构,本发明实施例可以同时支持一种或者多种单点登录协议。单点登录协议实现模块120通过账号存储连接适配器110从对应的账号存储***中提取原始账号信息。
原始账号信息可以包括原始部门信息、原始群组信息和原始用户信息等。其中,原始部门信息可以包括当前用户所属部门信息,以及从根部门开始的所有父级部门信息;原始群组信息没有层级关系,是群组的集合;原始用户信息可以包括私有云环境中账号存储***中的用户标识(Id)、邮箱、手机号码、用户名等基本信息,用户标识(Id)可以在私有云环境的账号存储***中唯一定位一个用户。
账号解析逻辑模块130用于接收单点登录协议实现模块120发送的原始账号信息,将原始账号信息转换为结构化账号信息。即账号解析逻辑模块130的输入数据是单点登录协议实现模块120返回的原始账号信息。账号解析逻辑模块130可以依次对原始账号信息进行预处理、过滤、校验和转换操作,获得原始账号信息对应的结构化账号信息。
在对原始账号信息进行预处理的过程中可以为企业或机构设置默认部门和默认群组。针对某企业或机构而言,如果该企业或机构设置了默认部门,则当原始账号信息中不包括部门信息时,账号解析逻辑模块130生成的结构化账号信息中的部门为默认部门;默认群组同理。如果该企业或机构没有设置默认部门和默认群组,且在传入的原始账号信息中不包括部门和群组时,账号解析逻辑模块130生成的结构化账号信息中不包含部门和群组,表示将该用户加入到根部门,不加入到任何群组。
对原始账号信息进行过滤操作,即是根据企业或机构的要求设置过滤条件,不满足过滤条件的用户不能登录。例如:企业或机构可以设置不允许某些部门成员登录,不允许离职员工登录等。
对原始账号信息进行校验操作,即是对原始账号信息进行逻辑检查和格式检查。逻辑检查是指检查该用户是否满足约束条件,如用户是否有所属部门,是否包含从根部门开始的所有父级部门等。格式检查包括检查账号的编码、账号的长度等是否符合设定要求,账号中的邮箱或者手机号码是否合法等。校验失败后可以报错,并给出相应的错误信息。
对原始账号信息进行转换操作,即根据设定的转换规则对原始账号信息进行转换。如将学生学号加上特定的后缀,将某些字段根据规则进行拼接等。
通过对原始账号信息进行预处理、过滤、校验和转换操作,账号解析逻辑模块130可以获得原始账号信息对应的结构化账号信息,其返回的结构化账号信息可以包含完整的部门层级信息,即包括当前部门从根部门开始的所有上级部门,而且这些部门可以从根部门开始一级一级向下到当前部门构造整个部门链。
单点登录模块140用于用户登录。可以接收账号解析逻辑模块130返回的结构化账号信息,在接收到用户的登录请求时,访问公有云环境的账号***,根据结构化账号信息查询公有云环境的账号***中是否存在用户的用户记录,如果存在,则设置用户的状态信息,并跳转至相应页面完成用户登录。
单点登录模块140的输入是账号解析逻辑模块130返回的结构化账号信息。在接收到用户的登录请求时,单点登录模块140可以访问公有云环境的账号***,使用从账号解析逻辑模块130返回的结构化账号信息查询是否存在该用户的用户记录,如果存在,则表明该用户是已经存在的合法用户,可以设置该用户的状态信息,并跳转到相应的合适页面,完成用户登录过程。
单点登录模块140还可以用于在接收到用户的登录请求时,如果确定用户未登录,则输出用户账号输入框,接收用户输入的账号信息,提取账号信息中的前缀或者后缀域信息,根据域信息确定账号信息对应的账号存储地址。
域-存储映射表150用于存储从域到私有云环境的账号存储***的映射关系。通过域-存储映射表150可以根据域查询对应的账号存储***。
通过单点登录服务部分100进行的一次正常的单点登录过程可以描述如下:
首先,单点登录模块140在接收到用户的登录请求时,如果判断用户未登录,则弹出账号输入框。
在用户输入账号信息后,单点登录模块140可以提取用户输入的账号信息中的前缀或者后缀域信息,根据域信息可以判断该账号信息对应的账号存储***,即存储在私有云环境的哪一个账号存储***上。具体判断逻辑可以为:若域信息不存在,则使用私有云环境中默认的账号存储***;若域信息存在,则查询域-存储映射表150,得到私有云环境中对应的账号存储***。
然后,单点登录模块140调用单点登录协议实现模块120开始账号信息的提取过程。即单点登录协议实现模块120根据目标账号存储***的类型选择合适的账号存储连接适配器110,连接目标账号存储***,提取原始账号信息。
进而,原始账号信息被账号解析逻辑模块130转换成结构化账号信息。
最后,单点登录模块140使用结构化账号信息完成该用户所用账号的登录过程。
在本发明实施例中,账号同步部分200用于将私有云环境中的私有账号信息进行转换处理后存储到公有云环境的账号***中。
在本发明的一个实施例中,账号同步部分200可以包括主动账号同步模块210;
主动账号同步模块210用于根据接收到的调整指令,对公有云环境的账号***中的账号信息进行调整。
在本发明实施例中,主动账号同步模块210可以提供一组接口,企业或机构的账号管理人员可以随时调用这组接口来对公有云环境的账号***中的账号信息进行调整操作,如进行增、删、改等操作。
具体的,主动账号同步模块210可以包括账号增量同步接口。账号管理人员可以调用账号增量同步接口实时的将私有云环境的存储***中的账号信息或者账号变更信息同步到对应的公有云环境的账号***中。
通过该账号增量同步接口可以进行批量操作,可以通过状态码控制账号增量更新行为,同时也可以进行默认部门或者默认群组的设置。
通过账号增量同步接口可以进行批量操作,账号管理人员可以一次同步一批账号信息,加快账号同步的过程。批量操作结束后,账号增量同步接口可以返回全部成功、部分成功和全部失败三种信息。对于全部成功,返回全部成功标志、成功记录条数。对于部分成功,返回部分成功标志、部分成功记录条数、以及失败记录的详细信息。在失败记录的详细信息中,各失败记录可以用唯一Id标识,同时包括当前记录失败的状态码和失败的原因。对于全部失败,返回全部失败标志和失败记录的详细信息。
账号增量同步接口可以通过状态码控制账号增量更新行为。如对于删除操作,通过状态码可以控制是冻结账号还是删除账号等;对应新建账号,通过状态码可以控制导入的新账号是与已有账号关联,还是新建一个账号。
在本发明实施例中,状态码可以由4位二进制数值表示,从左到右,依次描述如下:
第一位,表示新增用户时是否需要绑定邮箱,0表示不绑定,1表示绑定。
第二位,表示新增用户时是否需要绑定手机号,0表示不绑定,1表示绑定。
第三位和第四位组合表示如下:
00,表示冻结账号,被冻结的账号不允许登录,但是数据不会删除。当账号管理人员将该账号解冻后,该用户可以再次登录。
10,表示删除账号,账号删除后,相关数据也会删除。
01,表示用户账号不存在则新增,新增的用户账号状态为未激活状态;在导入账号时,若用户账号已经存在,则修改用户账号。
11,表示用户账号不存在则新增,新增的用户账号状态为激活状态;在导入账号时,若用户账号已经存在,则修改用户账号。
其中,绑定表示账号关联,即将公有云环境中注册过的账号与私有云环境的存储***中对应的账号关联起来。未激活的用户不可以登录,需要通过手机或者邮箱激活后才可以登录。
只有新增用户时,状态码的第一位、第二位才起作用。
与单点登录类似,账号增量同步接口也可以支持为企业或机构设置全局的默认部门或者默认群组。当导入的成员用户账号信息包括部门或者群组信息时,直接使用其中的部门或者群组信息。当导入的成员账号信息中未指定部门或者群组,并且已经设置全局默认部门或者默认群组时,使用默认部门或者默认群组,等同于将该成员加入默认部门或者默认群组中。当导入的成员账号信息中既未指定部门或者群组,也未指定默认部门或者默认群组时,将该用户加入到根部门,不加入到任何群组。
通过主动账号同步模块210进行主动账号同步过程可以描述如下:
首先,账号管理人员传入合适的账号信息和状态码,鉴权信息,调用账号增量同步接口。
然后,主动账号同步模块210处理请求,其处理的操作可以分成四步:为请求分配唯一的序列号;对请求鉴权;将账号信息同步到公有云环境的账号***和返回批量操作结果。
最后,账号管理人员获得批量操作的结果。
下面对上述主动账号同步模块210处理请求的4个步骤进行具体说明。
为请求分配唯一的序列号:为了便于跟踪接口处理的状态,主动账号同步模块210给每个请求分配一个随机的序列号。请求处理的每个步骤产生的日志信息都包含该序列号,并且请求的返回的结果信息也包含该序列号。账号管理人员即接口调用方可以使用序列号查询日志,跟踪请求的详细运行过程。
对请求鉴权:为了禁止非授权用户调用该接口,主动账号同步模块210会对接收到的请求进行鉴权,通过鉴权的请求才能进行账号同步。
将账号信息同步到公有云环境的账号***:具体支持增、删、改三种操作,操作的行为受状态码控制。主动账号同步模块210与公有云账号***进行交互,完成账号的同步操作。
返回批量操作结果:如果请求在鉴权阶段失败,会返回全部失败。如果请求在账号同步阶段出错,会返回完全成功、部分成功和全部失败三种结果之一。返回的信息中包括唯一的序列号,方便追踪和调试。
在本发明的另一个实施例中,账号同步部分200还可以包括被动账号同步模块220;
被动账号同步模块220,用于在用户登录公有云环境时,根据私有云环境传递的账号信息,更新公有云环境的相应账号信息。
在本发明实施例中,账号同步部分200除包含主动账号同步模块210外,还可以包括被动账号同步模块220。被动账号同步模块220可以在用户登录公有云环境时,根据私有云环境传递过来的账号信息,更新公有云环境的相应账号信息。
账号同步部分200还可以包括被动账号同步开关,用于控制被动账号同步模块220是否启用。被动账号同步模块220由被动账号同步开关控制,只有当被动账号同步开关打开时,被动账号同步模块220才被启用。被动账号同步开关的控制过程可以发生在用户登录过程中。
当被动账号同步开关打开时,用户登录公有云环境过程中,单点登录模块140可以从账号解析逻辑模块130中获得结构化账号信息,然后向公有云环境的账号***中查询该用户。若查询不到对应的公有云账号信息,说明公有云环境的账号***中不存在该用户,单点登录模块140调用被动账号同步模块220向公有云环境的账号***中写入用户账号信息,完成账号的同步。若查询到对应的账号信息,则比较两者的账号信息,若账号信息有变化,则更新公有云环境的账号***中的账号信息。
本发明实施例通过主动账号同步模块210或者被动账号同步模块220可以实现公有云环境中账号***的同步,具有较高的实用价值。
以图3为例,对本发明实施例所提供的混合云环境的账号对接***进行详细说明。
在实际应用中,公有云环境会记录用户的登录状态。当公有云环境判断用户未登录或者登录状态失效时会将用户页面重定向到登录页面,开始单点登录过程。
用户单点登录时,首先访问单点登录服务部分100判断单点服务端是否有会话Session缓存用户的单点登录状态,如果已经被缓存,则直接获得相应用户的信息,与公有云环境的账号***交互完成登录过程。如果没有记录用户的单点登录状态,单点登录模块140调用对应的单点登录协议实现模块120操作,跳转到账号登录页面。
大型企业或者学校等机构的私有云环境中可以有多个账号存储***,如数据库1、数据库2、LDAP等,并且账号格式各异,如:学校中学生用学号登录,老师用教工号登录。单点登录服务部分100使用域-存储映射表150记录域到私有云环境的账号存储***的映射关系,可以根据域查询对应的账号存储***。
用户登录时,输入的账号信息中可以包含域前缀或者后缀信息,如:domainN\account或者account@domainN形式;账号信息中不包含域则表示账号存储在默认域中。单点登录模块140提取账号信息中的域信息,得到对应的目标账号存储。
单点登录协议实现模块120针对不同的账号存储***使用账号存储连接适配器110选择不同的连接库。如针对mysql数据库,选择mysql驱动;针对oracle数据库选择oracle驱动,针对ldap数据库可以选择ldaptive库。
账号解析逻辑模块130可以根据域信息查询私有存储信息,针对不同的存储做不同的处理。具体包括账号过滤、账号校验和账号转换三步。账号过滤是根据企业或机构的要求和账号特点设置过滤条件,允许或者禁止某些用户登录。其使用场景较多。例如:企业采用公有云环境初期一般会小范围试用,此时账号过滤可以仅允许特定成员登录。同时,账号过滤也可禁止某些成员登录,如禁止已经离职员工登录,禁止已经毕业的学生登录等;账号转换是将不同的账号信息转换成统一的格式。针对不同的账号格式,其转换方式也不一样。首先转换后的账号Id含有企业特有的标识,用来在公有云环境的账号***中唯一标识该账号信息。例如:对于学号,转换之后的账号加上学校特有的域名作为后缀,如浙江大学的学生Id可以加上@stu.zju.edu.cn,而老师Id加上@tea.zju.edu.cn,以在公有云环境的账号***中进行唯一标识。如果登录时输入的账号含有域信息,则转换之后对应账号也包括域信息。
账号解析逻辑模块130解析后生成的账号格式的部门信息包含从根部门到当前部门的完整部门路径,一个用户可以属于多个部门。返回的部门信息是一个部门路径集合。集合的元素表示方式可以为:根部门信息>下一级子部门信息>…>当前用户所示部门信息。账号解析逻辑模块130返回的群组是一个群组集合,返回的用户信息是包含所有关注的字段。
被动账号同步功能由被动账号同步模块220提供。从图3可以看出被动账号同步模块220的输入数据为账号解析逻辑模块130解析后的结构化账号信息。由于账号解析逻辑模块130返回了登录用户所有的账号信息,因此可以将这些信息增加到公有云环境的账号***中,也可以用这些账号信息来更新公有云环境的账号***中的已有账号。
主动账号同步模块210进行主动账号同步时,为请求分配序列号和对请求使用前置过滤器(Filter)实现鉴权。请求首先被Filter拦截处理,只有过滤器鉴权通过,请求才能到达业务处理逻辑。对请求分配的序列号由UUID和客户端请求IP拼接而成。其中,UUID(Universally Unique Identifier,通用唯一识别码)是一个软件建构的标准,目的是让分布式***中的所有元素,都能进行唯一辨识。可以使用序列号唯一标识一个请求。
主动账号同步模块210包括的账号增量同步接口支持账号的增、删、改操作。对于增加或者修改操作,传入的账号信息即为私有云环境中账号信息,新增账号必须满足一定的顺序约束。
需要先同步部门和群组,最后同步普通用户。同步用户时,如果找不到用户所在的部门或群组,则忽略加入部门和群组的动作。
新增部门时,需要先出现父部门,再出现子部门,以保证部门创建的顺序。如果找不到对应部门的父部门,则此部门同步失败。
删除部门时,先将所有部门成员移出,最后再删除该部门。
主动账号同步模块210提供的账号增量同步接口设计成幂等的,对于同样的请求,执行1次和N次,最终结果一样。当出现同步失败时,可以多次重试,不会因数据重复提交而造成状态混乱。
账号增量同步接口的状态码编码当前只使用了4位二进制编码表示,支持向高位扩展,控制更多的同步行为。并且,扩展与现有功能兼容。
应用本发明实施例所提供的技术方案,混合云环境的账号对接***包括单点登录服务部分和账号同步部分,其中,单点登录服务部分用于在接收到用户针对公有云环境的登录请求时,根据用户当前登录情况,确定是否允许用户直接登录公有云环境,账号同步部分用于将私有云环境中的账号信息进行转换处理后存储到公有云环境的账号***中。这样方便使用混合云环境的企业和机构对成员账号进行统一管理,可以减少管理成本,减轻维护账号的负担,用户不需额外注册,使用私有云环境的账号信息即可登录公有云环境,使用公有云服务,提高了工作效率。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种混合云环境的账号对接***,其特征在于,包括单点登录服务部分和账号同步部分,其中:
所述单点登录服务部分,用于在接收到用户针对公有云环境的登录请求时,根据所述用户当前登录情况,确定是否允许所述用户直接登录所述公有云环境;
所述账号同步部分,用于将私有云环境中的私有账号信息进行转换处理后存储到所述公有云环境的账号***中。
2.根据权利要求1所述的混合云环境的账号对接***,其特征在于,所述单点登录服务部分包括账号存储连接适配器、单点登录协议实现模块、账号解析逻辑模块、单点登录模块和域-存储映射表,其中,
所述账号存储连接适配器,用于连接所述私有云环境中的一个或多个账号存储***;
所述单点登录协议实现模块,用于通过所述账号存储连接适配器从相应的账号存储***中提取原始账号信息;
所述账号解析逻辑模块,用于接收所述单点登录协议实现模块发送的所述原始账号信息,将所述原始账号信息转换为结构化账号信息;
所述单点登录模块,用于接收所述账号解析逻辑模块返回的所述结构化账号信息,在接收到所述用户的登录请求时,根据所述结构化账号信息查询所述公有云环境的账号***中是否存在所述用户的用户记录,如果是,则设置所述用户的状态信息,并跳转到相应页面完成用户登录;
所述域-存储映射表,用于存储从域到所述私有云环境的账号存储***的映射关系。
3.根据权利要求2所述的混合云环境的账号对接***,其特征在于,所述账号存储连接适配器具体用于根据所述私有云环境中的账号存储***的类型,选择对应连接方式连接所述私有云环境中的一个或多个账号存储***。
4.根据权利要求2所述的混合云环境的账号对接***,其特征在于,所述单点登录协议实现模块包括集中式认证服务CAS子模块和/或安全断言标记语言SAML子模块。
5.根据权利要求2所述的混合云环境的账号对接***,其特征在于,所述账号解析逻辑模块具体用于对所述原始账号信息进行预处理、过滤、校验和转换操作,获得所述原始账号信息对应的结构化账号信息。
6.根据权利要求2所述的混合云环境的账号对接***,其特征在于,所述单点登录模块,还用于在接收到所述用户的登录请求时,如果确定所述用户未登录,则输出账号输入框,接收所述用户输入的账号信息,提取所述账号信息中的前缀或者后缀域信息,根据所述域信息确定所述账号信息对应的账号存储***。
7.根据权利要求1至6任一项所述的混合云环境的账号对接***,其特征在于,所述账号同步部分包括主动账号同步模块;
所述主动账号同步模块,用于根据接收到的调整指令,对所述公有云环境的账号***中的账号信息进行调整。
8.根据权利要求7所述的混合云环境的账号对接***,其特征在于,所述账号同步部分还包括被动账号同步模块;
所述被动账号同步模块,用于在所述用户登录所述公有云环境时,根据所述私有云环境传递的账号信息,更新所述公有云环境的相应账号信息。
9.根据权利要求8所述的混合云环境的账号对接***,其特征在于,所述账号同步部分还包括被动账号同步开关,用于控制所述被动账号同步模块是否启用。
10.根据权利要求8所述的混合云环境的账号对接***,其特征在于,所述主动账号同步模块包括账号增量同步接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710449712.5A CN107222487B (zh) | 2017-06-13 | 2017-06-13 | 一种混合云环境的账号对接*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710449712.5A CN107222487B (zh) | 2017-06-13 | 2017-06-13 | 一种混合云环境的账号对接*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107222487A true CN107222487A (zh) | 2017-09-29 |
CN107222487B CN107222487B (zh) | 2020-09-08 |
Family
ID=59949531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710449712.5A Active CN107222487B (zh) | 2017-06-13 | 2017-06-13 | 一种混合云环境的账号对接*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107222487B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108011961A (zh) * | 2017-12-07 | 2018-05-08 | 携程旅游信息技术(上海)有限公司 | 基于混合云服务的语音交互*** |
CN109598114A (zh) * | 2018-11-23 | 2019-04-09 | 金色熊猫有限公司 | 跨平台统一用户账户管理方法及*** |
CN111416795A (zh) * | 2019-01-08 | 2020-07-14 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置、计算设备及介质 |
CN111488095A (zh) * | 2020-04-07 | 2020-08-04 | 中国人民财产保险股份有限公司 | 一种用户登录管理方法及装置 |
WO2020258998A1 (zh) * | 2019-06-27 | 2020-12-30 | 华为技术有限公司 | 生成身份识别码的方法和装置、身份认证的方法和装置 |
CN112487390A (zh) * | 2020-11-27 | 2021-03-12 | 网宿科技股份有限公司 | 一种微服务切换方法及*** |
CN114189375A (zh) * | 2021-12-06 | 2022-03-15 | 银清科技有限公司 | 一种业务***管理方法和装置 |
CN114500002A (zh) * | 2021-12-31 | 2022-05-13 | 济南超级计算技术研究院 | 一种基于ldap的集群账号分配方法及*** |
CN114697111A (zh) * | 2022-03-30 | 2022-07-01 | 浪潮云信息技术股份公司 | 一种跨云访问公有云的方法、***及公有云 |
CN117453816A (zh) * | 2023-10-24 | 2024-01-26 | 上海宁盾信息科技有限公司 | 一种用户数据统一方法、***、计算机及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110055374A1 (en) * | 2009-08-31 | 2011-03-03 | International Business Machines Corporation | Computer implemented dns server ip address lookup mechanism |
CN102437914A (zh) * | 2010-12-08 | 2012-05-02 | 袁永亮 | 一种由电信网为互联网业务提供用户身份标识和用户身份认证的方法 |
CN103067406A (zh) * | 2013-01-14 | 2013-04-24 | 暨南大学 | 一种公有云与私有云之间的访问控制***及方法 |
US20150249644A1 (en) * | 2013-02-05 | 2015-09-03 | Fortinet, Inc. | Cloud-based security policy configuration |
CN105119974A (zh) * | 2015-07-21 | 2015-12-02 | 信阳启航信息科技有限公司 | 一种混合云架构的物联***及实现方法 |
CN105528694A (zh) * | 2015-12-31 | 2016-04-27 | 青岛英特沃克网络科技有限公司 | 基于集群通讯的企业互联办公*** |
CN106302117A (zh) * | 2016-08-15 | 2017-01-04 | 上海云睦网络科技有限公司 | 消息传输***、方法和装置 |
-
2017
- 2017-06-13 CN CN201710449712.5A patent/CN107222487B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110055374A1 (en) * | 2009-08-31 | 2011-03-03 | International Business Machines Corporation | Computer implemented dns server ip address lookup mechanism |
CN102437914A (zh) * | 2010-12-08 | 2012-05-02 | 袁永亮 | 一种由电信网为互联网业务提供用户身份标识和用户身份认证的方法 |
CN103067406A (zh) * | 2013-01-14 | 2013-04-24 | 暨南大学 | 一种公有云与私有云之间的访问控制***及方法 |
US20150249644A1 (en) * | 2013-02-05 | 2015-09-03 | Fortinet, Inc. | Cloud-based security policy configuration |
CN105119974A (zh) * | 2015-07-21 | 2015-12-02 | 信阳启航信息科技有限公司 | 一种混合云架构的物联***及实现方法 |
CN105528694A (zh) * | 2015-12-31 | 2016-04-27 | 青岛英特沃克网络科技有限公司 | 基于集群通讯的企业互联办公*** |
CN106302117A (zh) * | 2016-08-15 | 2017-01-04 | 上海云睦网络科技有限公司 | 消息传输***、方法和装置 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108011961A (zh) * | 2017-12-07 | 2018-05-08 | 携程旅游信息技术(上海)有限公司 | 基于混合云服务的语音交互*** |
CN109598114A (zh) * | 2018-11-23 | 2019-04-09 | 金色熊猫有限公司 | 跨平台统一用户账户管理方法及*** |
CN109598114B (zh) * | 2018-11-23 | 2021-07-09 | 金色熊猫有限公司 | 跨平台统一用户账户管理方法及*** |
CN111416795B (zh) * | 2019-01-08 | 2022-07-29 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置、计算设备及介质 |
CN111416795A (zh) * | 2019-01-08 | 2020-07-14 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置、计算设备及介质 |
WO2020258998A1 (zh) * | 2019-06-27 | 2020-12-30 | 华为技术有限公司 | 生成身份识别码的方法和装置、身份认证的方法和装置 |
CN111488095A (zh) * | 2020-04-07 | 2020-08-04 | 中国人民财产保险股份有限公司 | 一种用户登录管理方法及装置 |
CN112487390A (zh) * | 2020-11-27 | 2021-03-12 | 网宿科技股份有限公司 | 一种微服务切换方法及*** |
CN114189375A (zh) * | 2021-12-06 | 2022-03-15 | 银清科技有限公司 | 一种业务***管理方法和装置 |
CN114189375B (zh) * | 2021-12-06 | 2024-02-27 | 银清科技有限公司 | 一种业务***管理方法和装置 |
CN114500002A (zh) * | 2021-12-31 | 2022-05-13 | 济南超级计算技术研究院 | 一种基于ldap的集群账号分配方法及*** |
CN114500002B (zh) * | 2021-12-31 | 2023-11-10 | 济南超级计算技术研究院 | 一种基于ldap的集群账号分配方法及*** |
CN114697111A (zh) * | 2022-03-30 | 2022-07-01 | 浪潮云信息技术股份公司 | 一种跨云访问公有云的方法、***及公有云 |
CN114697111B (zh) * | 2022-03-30 | 2024-06-07 | 浪潮云信息技术股份公司 | 一种跨云访问公有云的方法、***及公有云 |
CN117453816A (zh) * | 2023-10-24 | 2024-01-26 | 上海宁盾信息科技有限公司 | 一种用户数据统一方法、***、计算机及存储介质 |
CN117453816B (zh) * | 2023-10-24 | 2024-05-07 | 上海宁盾信息科技有限公司 | 一种用户数据统一方法、***、计算机及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107222487B (zh) | 2020-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107222487A (zh) | 一种混合云环境的账号对接*** | |
Arnold | Openstack swift: Using, administering, and developing for swift object storage | |
CN109857724B (zh) | 基于区块链实现支持多种数据库的方法及设备 | |
CN103067463B (zh) | 用户root权限集中管理***和管理方法 | |
US11675774B2 (en) | Remote policy validation for managing distributed system resources | |
US10437846B2 (en) | System and method for providing data flexibility in a business intelligence server using an administration tool | |
CN101546261B (zh) | 多策略支持的安全网页标签库*** | |
CN102165447B (zh) | 用于管理对于实体的组织信息的访问的技术 | |
CN108900483A (zh) | 云存储细粒度访问控制方法、数据上传和数据访问方法 | |
CN105760192B (zh) | ***服务端业务模块的注册方法及装置 | |
US20090234880A1 (en) | Remote storage and management of binary object data | |
US10089371B2 (en) | Extensible extract, transform and load (ETL) framework | |
CN107391758A (zh) | 数据库切换方法、装置及设备 | |
CN103001945B (zh) | 一种多元化资源标识安全访问方法 | |
CN110889142A (zh) | 一种数据权限管理方法、装置、***及设备 | |
CN109829286A (zh) | 一种web应用的用户权限管理***及方法 | |
CN114143069B (zh) | 一种应用于微服务的权限管理***及方法 | |
CN107729097A (zh) | 展示页面配置方法及相应设备 | |
CN109725930A (zh) | 基于web平台的SVN权限管理方法及其装置 | |
CN109829330A (zh) | 一种svn权限设置方法、装置、***、电子设备 | |
Millar et al. | dCache, agile adoption of storage technology | |
CN104601671A (zh) | 移动终端的收藏夹数据存储、获取方法和装置 | |
US20040158737A1 (en) | System and method for single security administration | |
CN110532238A (zh) | 基于区块链技术的合同管理***及方法 | |
CN110544092A (zh) | 一种区块链的动态新增多类型数据库数据操作上链方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |