一种基于云计算的跨平台单点登录系统的制作方法

文档序号:9814394阅读:889来源:国知局
一种基于云计算的跨平台单点登录系统的制作方法
【专利说明】-种基于云计算的跨平台单点登录系统 【技术领域】
[0001] 本发明设及云计算安全技术领域,尤其设及一种基于云计算的跨平台单点登录系 统。 【【背景技术】】
[0002] 云计算环境具有资源集中、用户海量、有偿按需服务等特点,云端存储了大量的用 户敏感数据,一旦用户身份被仿冒,就很容易造成隐私和敏感数据的泄露,而70%的数据泄 漏是通过外部的输入源带进系统的,所W为了保证云服务的安全,必须对进入系统的用户 身份和其他输入源的身份有较强的认证。身份认证是其他安全策略的基础,也是其他安全 策略实现其安全功能的前提条件。随着云计算的不断成熟,提供的服务也越来越多,运些服 务分布在不同的服务器,分布在不同机构的域中,每个服务都有属于自己的数据库,用户通 过云终端登录虚拟桌面访问每一个服务时需要提供用户名密码或其他认证方式,在切换服 务时进行越来越多的登录。运种相对分散繁琐的身份认证机制对用户造成极大的精神负 担,为了减轻负担,用户可能将密码设置成容易记住的如纯数字或字母等,甚至对各种认证 设置相同的密码,或者将复杂密码记录在纸上贴在工作台上,运些做法会降低系统的整体 安全性,密码被非法截获的可能性增加,使系统容易被破解或攻击从而造成不必要的损失。 对管理员来说,被迫管理越来越多的身份,对用户职责权限的维护也需要花费大量的时间 进行调整。因此云环境下建立跨域的单点登录系统,实现一处登录,即单点登录SS0(Single Sign-on),让用户能够通过一次登录访问云计算环境中不同域的网络资源,从而减轻用户 和管理员的负担。
[0003] 目前实现单点登录的模型主要有网关模型、代理模型和令牌模型=种,对应于运 S种模型,目前有一些比较成熟的单点登录解决方案,如微软的化SSPOd、IBM的Web Sphere化的曰1 Server、CAS,但它们有着不同的侧重点,适合于不同的平台与架构,系统比 较复杂,缺乏灵活性,而且价格和学习成本都比较高。
[0004] 无论采取上述哪种模型,都需要记录和鉴别首次登录成功的认证信息,由于不同 平台的用户登录认证信息并不相同,因此,为了实现在不改变用户的登录信息的前提下能 够登录不同的平台,最常用的一种实现方式是通过设置一个独立的SSO认证服务器,将用户 的登录信息统一存储在SSO认证服务器中的用户管理系统中,由统一的用户管理系统完成 用户通过登录入口进入其它应用平台的全部登录过程,具体为:当用户应用程序APP首次访 问云计算环境中的一个平台时,首先通过SSO认证服务器的完成登录认证,如果登录成功, 会返回一个认证标识,用户应用程序APP在访问云计算环境中的另一个平台时,会直接将认 证标识提交给所述另一个平台,所述另一个平台会将该认证标识提交给SSO认证服务器进 行验证,如果验证成功,用户APP则可直接访问所述另一个平台,而无需再次进行用户登录 的全部过程。而不同平台的操作权限则由各个平台负责,从而实现了统一存储、分布授权。
[0005] 虽然运种通过统一的用户管理系统完成登录过程的方式实现了用户APP实现跨平 台单点登录,但存在下述安全性问题:
[0006] 用户APP在SSO认证服务器首次登录认证成功后,其返回的认证标识存在被截获的 风险,一旦该认证标识被其他用户截获,则其他用户可W容易地伪装成原用户,并能利用该 认证标识访问云计算环境中任何被授权的平台,从而给原用户带来不可预料的安全性风 险。 【
【发明内容】

[0007] 为了解决现有技术中的上述问题,本发明提出了一种新的基于云计算环境的跨平 台单点登录系统,包括:至少一台数据库管理服务器、至少一台认证服务器、至少一个用户 端,至少两个应用平台和一个云计算平台,其中,所述数据库管理服务器具有唯一数字标识 A,
[0008] 所述用户端运行需要用户身份认证的用户应用程序APP,且所述用户APP具有唯一 数字标识B;
[0009] 所述数据库管理服务器完成用户APP首次登录至少两个应用平台中的任一个应用 平台时的用户身份认证的流程,如果用户身份认证成功,则向用户APP返回用户身份认证成 功的授权标识C,并将授权标识C发送给云计算平台保存;
[0010] 用户APP接收至贩权标识C后,统计所述用户APP跨平台登录基数m,基于所述基数m 按照下述计算公式计算得到授权基数数值D1,所述计算公式为:Dl = f(A,B),所述跨平台登 录基数m等于用户APP跨平台访问的次数;
[0011] 当用户APP跨平台访问时,即访问所述至少两个应用平台中的不同于所述首次登 录的应用平台的至少另外一个应用平台时,向认证服务器发送数值B、D1和基数m,认证服务 器将接收到的用户APP的数字标识B和基数m发送给数据库管理服务器,将授权基数数值Dl 发送给所述云计算平台,数据库管理服务器根据数字标识B查询该用户APP是否曾首次登录 认证成功,如果查询到该用户APP曾首次登录认证成功,则向云计算平台发送用户APP的数 字标识B和基数m,云计算平台根据数字标识B查询得到所述授权标识C,并基于基数m按照下 述计算公式计算得到授权比较数值D2,所述计算公式为:D2 = f(A,B);比较D2与D1,如果比 较结果相等,则单点登录认证成功,可直接跨平台访问;如果首次登录认证不成功或者比较 结果不相等,则要求用户APP重新向数据库管理服务器发起用户身份认证流程,
[0012] 其中,所述f(A,B)与所述跨平台登录基数m具有关联关系,优选的:
[OOK]当登录基数m为奇数时,/'(A巧=+ COSfi + A X B;当m为偶数时, /04,巧=Vshiil + COS 及一A X 巨。
[0014] 优选的,当用户APP可直接跨平台访问所述至少两个应用平台中的不同于所述首 次登录的应用平台的至少另外一个应用平台时,由所述另外一个应用平台对所述用户APP 的操作权限进行验证。
[0015] 优选的,所述数据库管理服务器完成用户APP首次登录至少两个应用平台中的任 一个应用平台时的用户身份认证的流程包括W下步骤:
[0016] (1)用户APP向数据库管理服务器发送用户名、登录密码和用户APP唯一数字标识 B;
[0017] (2)数据库管理服务器检测所述用户名、登录密码与唯一数字标识B是否与用户注 册时保存的所述用户名、登录密码和唯一数字标识B完全一致;
[0018] (3)如果完全一致,则用户身份认证成功;否则,认证失败。
[0019] 优选的,所述操作权限至少包括W下至少一种:读取平台文件、写入平台文件、删 除平台文件、修改平台文件。
[0020] 优选的,所述云计算平台为SaaS应用模式。
[0021] 此外,还提供了一种跨平台单点登录系统的单点登录方法,包括下述步骤:
[0022] 用户APP向所述数据库管理服务器发起首次登录至少两个应用平台中的任一个应 用平台时的用户身份认证流程,如果身份认证成功,所述数据库管理服务器则向用户APP返 回用户认证成功的授权标识C,并将授权标识C发送给云计算平台保存;
[0023] 用户APP接收到授权标识C后,统计所述用户APP跨平台登录基数m,基于所述基数m 选择计算得到授权基数数值D1,其中,Dl=f(A,B),所述跨平台登录基数m等于用户APP跨平 台访问的次数;
[0
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1