一种使用临时认证码的校园系统单点登录方法技术方案

技术编号:32181615 阅读:21 留言:0更新日期:2022-02-08 15:43
本发明专利技术公开了一种使用临时认证码的校园系统单点登录方法,在URL中“隐藏”了凭据ticket,改为预先分配一次性有效的临时认证码,应用服务器只能通过临时认证码以接口的方式获取到凭据ticket,防止黑客通过URL直接截取到凭据ticket。认证中心通过应用服务器ID、较为复杂的接入码和IP白名单等方式,防止非法客户端接入。应用服务器在每次有人工操作时,都会向认证中心询问凭据ticket是否过期,避免应用服务器忘记退出而被其他人冒用。在认证中心登记所有用户在认证中心的用户ID以及与其对应的各个应用服务器中的应用服务器用户ID,不需要统一各个应用服务器的登录帐号,节省了各应用服务器供应商的改造成本。各应用服务器供应商的改造成本。各应用服务器供应商的改造成本。

【技术实现步骤摘要】
一种使用临时认证码的校园系统单点登录方法


[0001]本专利技术涉及单点登录的
,尤其涉及到一种使用临时认证码的校园系统单点登录方法。

技术介绍

[0002]随着信息化的发展,区域内校园的信息化系统越来越多,为了避免用户在不同系统之间切换进行登录,需要通过单点登录技术将各个信息化系统集成起来。
[0003]单点登录(Single Sign On),简称为SSO,是比较流行的系统整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。
[0004]现有的技术中,实现SSO的方法主要有三种,其中一种是使用认证中心对所有的应用进行认证的方式。在该认证方式中,当打开一个应用时,如果应用检测到用户未登录,则引导用户到认证中心的登录页面进行登录。用户登录后,认证中心会生成一个唯一的用户凭据(ticket),在点击第三方应用时,将ticket作为第三方应用URL的一个参数,应用将ticket发送给认证中心进行验证,认证中心验证通过后,应用如果检测到用户未登录,则进行免密登录,生成会话信息。
[0005]但上述方式中,打开第三方应用时,需要将ticket通过URL中进行传递,这会带来一定的风险,如果ticket被黑客非法截获,黑客可以使用ticket通过认证中心的认证,从而攻破系统的防护。
[0006]除此之外,在上述校园的应用系统场景中,还存在以下问题:
[0007](1)很多应用系统都是云平台,并且不同系统的登录方式不一致。有的使用工号/学籍号,有的使用账号,有的使用手机号。并且不同学校可能会有重复工号/学籍号的存在,那么认证中心登录后,需要通知应用系统,当前是哪个用户需要访问哪个学校。
[0008](2)用户在认证中心登录后,通常需要选择一个角色(校管理员/教师/学生/职工等)。有的业务系统支持多个角色(不同角色的权限不相同),如果不把角色ID传过去,它可能识别不了当前用户使用哪个角色来访问应用系统。而各个应用系统中的角色ID往往不一致,各应用系统的角色定义也不尽相同,这又为单点登录的集成提出了新的问题。

技术实现思路

[0009]本专利技术的目的在于克服现有技术的不足,提供一种使用临时认证码的校园系统单点登录方法。
[0010]为实现上述目的,本专利技术所提供的技术方案为:
[0011]一种使用临时认证码的校园系统单点登录方法,包括以下步骤:
[0012]S1、在认证中心配置用户列表、用户映射表、学校编码映射表、角色编码映射表,以及注册应用服务器,由认证中心为每个注册的应用服务器生成唯一的服务器ID和接入码,并补充与之对应的用户列表、用户映射表、学校编码映射表、角色编码映射表中相应的数
据;
[0013]S2、用户点击其中一个应用服务器X的应用A时,引导用户登录认证中心;用户采用用户ID登录认证中心后,由认证中心为用户随机生成一个唯一的具有有效期的临时认证码,并将该临时认证码放入能跳转至应用A的URL的参数中;
[0014]S3、依据步骤S2所述的URL跳转至应用服务器X的应用A,应用服务器X解析URL中的临时认证码,并将自身的域名、临时认证码以及步骤S1生成的服务器ID、接入码发往认证中心验证;
[0015]S4、认证中心对应用服务器X的IP、服务器ID、接入码和域名进行校验,若校验通过,则对临时认证码进行认证,并进入步骤S5,否则跳转到认证中心重新登录认证;
[0016]S5、认证通过后,若认证中心没有检测到用户的凭据ticket,则给用户生成一个具有有效期的凭据ticket;若认证中心检测到用户的凭据ticket,则直接使用已有的凭据ticket;
[0017]S6、用户选择其在应用服务器X中的角色,从而通过用户列表得到角色对应的角色ID、用户ID对应的学校ID,并通过角色编码映射表结合角色ID、服务器ID得到应用服务器角色ID,通过学校编码映射表结合学校ID、服务器ID得到应用服务器学校ID,通过用户映射表结合用户ID、服务器ID得到应用服务器用户ID;
[0018]S7、认证中心将步骤S5所述的用户的凭据ticket以及步骤S6得到的应用服务器角色ID、应用服务器学校ID、应用服务器用户ID传送至应用服务器X;
[0019]S8、应用服务器X接收到认证中心传送的信息后,若检测到应用服务器用户ID并未登录,则使用该应用服务器用户ID自动进行免密登录,在应用服务器X创建会话信息,并通过应用服务器学校ID和应用服务器角色ID访问对应的学校和角色,自动打开步骤S2用户点击的应用A;
[0020]S9、若用户继续点击应用服务器X中的其他应用,在凭据ticket的有效期内免密登录,随时打开应用服务器X中的其他应用;
[0021]若用户在应用服务器X中点击另一应用服务器Y的应用B,则重新向认证中心请求临时认证码,重新认证登录;
[0022]S10、用户结束登录时,用户在认证中心退出,认证中心将用户的凭据ticket销毁,并通知所有在认证中心注册的应用服务器销毁会话。
[0023]进一步地,所述步骤S1中,生成的接入码由字符串和数字混合组成。
[0024]进一步地,所述步骤S1还包括将每个注册的应用服务器的IP设置到访问白名单,使得每个注册的应用服务器只能通过访问白名单中的IP地址或地址段进行访问。
[0025]进一步地,所述步骤S1还包括将每个注册的应用服务器的域名设置为限制访问域名。
[0026]进一步地,所述用户列表的字段包括用户ID、角色、角色ID、学校ID;
[0027]所述用户映射表的字段包括用户ID、服务器ID、应用服务器用户ID;
[0028]所述学校编码映射表的字段包括学校ID、服务器ID、应用服务器学校ID;
[0029]所述角色编码映射表的字段包括角色ID、服务器ID、应用服务器角色ID。
[0030]进一步地,所述步骤S9中,用户点击并打开应用A后,若用户继续点击应用服务器X中的其他应用,则应用服务器X发送用户的凭据ticket到认证中心询问是否过期,如果过
期,则认证中心向应用服务器X返回凭据ticket过期的消息,应用服务器X注销会话并关闭当前页面,跳转到认证中心重新登录认证,否则延长用户的凭据ticket的有效时间;用户在凭据ticket的有效时间内免密登录,随时打开应用服务器X中的其他应用。
[0031]进一步地,所述步骤S9中,用户点击并打开应用A后,若用户在应用服务器X中点击另一应用服务器Y的应用B,则应用服务器X向认证中心请求临时认证码临时认证码,认证中心重新生成临时认证码返回给应用服务器X,应用服务器X在跳转到该应用服务器Y的应用B的URL中携带临时认证码,且该应用服务器Y使用重新生成的临时认证码和其服务器ID、接入码和域名发往认证中心验证,并进行以下步骤:
[0032]a)认证中心对应用服务器Y的IP、服务器ID、接入码本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种使用临时认证码的校园系统单点登录方法,其特征在于,包括以下步骤:S1、在认证中心配置用户列表、用户映射表、学校编码映射表、角色编码映射表,以及注册应用服务器,由认证中心为每个注册的应用服务器生成唯一的服务器ID和接入码,并补充与之对应的用户列表、用户映射表、学校编码映射表、角色编码映射表中相应的数据;S2、用户点击其中一个注册的应用服务器X的应用A时,引导用户登录认证中心;用户采用用户ID登录认证中心后,由认证中心为用户随机生成一个唯一的具有有效期的临时认证码,并将该临时认证码放入能跳转至应用A的URL的参数中;S3、依据步骤S2所述的URL跳转至应用服务器X的应用A,应用服务器X解析URL中的临时认证码,并将自身的域名、临时认证码以及步骤S1生成的服务器ID、接入码发往认证中心验证;S4、认证中心对应用服务器X的IP、服务器ID、接入码和域名进行校验,若校验通过,则对临时认证码进行认证,并进入步骤S5,否则跳转到认证中心重新登录认证;S5、认证通过后,若认证中心没有检测到用户的凭据ticket,则给用户生成一个具有有效期的凭据ticket;若认证中心检测到用户的凭据ticket,则直接使用已有的凭据ticket;S6、用户选择其在应用服务器X中的角色,从而通过用户列表得到角色对应的角色ID、用户ID对应的学校ID,并通过角色编码映射表结合角色ID、服务器ID得到应用服务器角色ID,通过学校编码映射表结合学校ID、服务器ID得到应用服务器学校ID,通过用户映射表结合用户ID、服务器ID得到应用服务器用户ID;S7、认证中心将步骤S5所述的用户的凭据ticket以及步骤S6得到的应用服务器角色ID、应用服务器学校ID、应用服务器用户ID传送至应用服务器X;S8、应用服务器X接收到认证中心传送的信息后,若检测到应用服务器用户ID并未登录,则使用该应用服务器用户ID自动进行免密登录,在应用服务器X创建会话信息,并通过应用服务器学校ID和应用服务器角色ID访问对应的学校和角色,自动打开步骤S2用户点击的应用A;S9、若用户继续点击应用服务器X中的其他应用,在凭据ticket的有效期内免密登录,随时打开应用服务器X中的其他应用;若用户在应用服务器X中点击另一应用服务器Y的应用B,则重新向认证中心请求临时认证码,重新认证登录;S10、用户结束登录时,用户在认证中心退出,认证中心将用户的凭据ticket销毁,并通知所有在认证中心注册的应用服务器销毁会话。2.根据权利要求1所述的一种使用临时认证码的校园系统单点登录方法,其特征在于,所述步骤S1中,生成的接入码由字符串和数字混合组成。3.根据权利要求2所述的一种使用临时认证码的校园系统单点登录方法,其特征在于,所述步骤S1还包括将每个注册的应用服务器的IP设置到访问白名单,使得每个注册的应用服务器只能通过访问白名单中的IP地址或地址段进行访问。...

【专利技术属性】
技术研发人员:刘沛强杜振锋
申请(专利权)人:广东宜教通教育有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1