一种基于oauth2.0的认证和退出方法及平台

文档序号:86326 发布日期:2021-10-08 浏览:28次 >En<

阅读说明:本技术 一种基于oauth2.0的认证和退出方法及平台 (Authentication and quitting method and platform based on oauth2.0 ) 是由 袁玉 于 2021-06-29 设计创作,主要内容包括:本发明提供了一种基于oauth2.0的认证和退出方法及平台,属于网络安全技术领域。本发明提供了一种基于oauth2.0的认证和退出方法及平台,通过统一认证的方式,统一用户入口,资源提供方可在认证平台中实现对用户和第三方平台进行管理和维护;用户登录到第三方平台后,用户请求数据不需通过认证平台,保证第三方平台数据隐私,从本发明中用户在退出时,自动退出所有已登录的第三方平台,实现用户的统一退出。(The invention provides an authentication and exit method and a platform based on oauth2.0, and belongs to the technical field of network security. The invention provides an authentication and quit method and a platform based on oauth2.0, which unify user entries in a unified authentication mode, and a resource provider can manage and maintain a user and a third-party platform in the authentication platform; after the user logs in the third-party platform, the user requests data without passing through the authentication platform, the data privacy of the third-party platform is ensured, and when the user logs out, the user automatically logs out of all the logged-in third-party platforms, so that the user can uniformly log out.)

一种基于oauth2.0的认证和退出方法及平台

技术领域

本发明涉及网络安全

技术领域

,尤其涉及一种基于oauth2.0的认证和退出方法及平台。

背景技术

随着移动网络设备的普及,网络用户数量极大增长,各种网站、移动应用也层出不穷。在访问时,都需要进行用户的身份认证,但此前的授权都需要用户名和密码。OAuth(Open Authorization)协议因此应运而生。OAuth 2.0协议使第三方平台无需获取用户账号和密码,便可向资源提供方请求用户授权的资源。OAuth 2.0协议的出现降低用户使用网站或系统等平台的账号和密码记忆成本,实现一套账号和密码多处可用。

目前OAuth在web应用和移动设备应用方面使用较为广泛,国内第三方登录普遍使用OAuth2.0协议;通过OAuth协议向资源提供方获取登录状态和部分用户信息。

目前OAuth协议多应用于资源提供方为第三方平台提供授权数据,资源提供方自身并不对用户和第三方平台的关系进行管理和维护。对于部分希望管理用户与第三方平台关系的资源提供方,则需要更灵活的解决方案。

中国专利申请文献CN102394887B中,公开了一种基于OAuth协议的开放平台安全认证方法,方法包括:开放平台检查第三方应用装置发来的申请未授权的Request Token的访问请求中,是否携带有和开放平台上保存一致的应用实例标识信息,如果没有,则为第三方应用装置分配新的应用实例标识,并将应用实例标识、生成的未经用户授权的RequestToken与对应的token密钥返回给第三方应用装置;步骤二、第三方应用装置将开放平台返回的应用实例标识更新到本地,并继续携带应用实例标识进行后续的OAuth认证请求,开放平台通过第三方应用装置发来的应用实例标识引导用户对资源授权,然后根据应用实例标识和第三方应用标识对第三方应用装置认证通过后,向第三方应用装置下发Access Token与对应的密钥。当用户向第三方应用装置发出访问开放平台的资源请求时,第三方应用装置检查本地是否已分配有应用实例标识,如果有,则携带应用实例标识向开放平台的Request Token URL地址发起申请未授权的Request Token的访问请求;如果没有,则直接向开放平台的Request Token URL地址发起申请未授权的Request Token的访问请求;第三方应用装置在认证成功后,携带应用实例标识、第三方应用标识和Access Token参数信息,通过开放平台的服务API访问用户授权的资源,开放平台根据应用实例标识和第三方应用标识,对第三方应用和最终用户的服务请求进行记录,记录信息可以用于计费。该方案中提出资源提供方(开放平台)通过实例标识对第三方平台请求进行限制和管理,但本质上还是资源提供方为第三方平台提供服务的方式,资源提供方仍无法对用户进行管理,用户分散在各个第三方平台,资源提供方仅提供服务接口供第三方平台使用。

现有技术至少存在以下不足:

1.资源提供方自身并不对用户和第三方平台的关系进行管理和维护,不能管理用户与第三方平台关系。

2.资源提供方仅为第三方平台提供部分服务。

3.服务接口数据均经过第三方平台,无法保证数据隐私。

发明内容

为解决现有技术中存在的技术问题,本发明提供了一种基于oauth2.0的认证和退出方法及平台,通过统一认证的方式,统一用户入口,资源提供方可在认证平台中实现对用户和第三方平台进行管理和维护;用户登录到第三方平台后,用户请求数据不需通过认证平台,保证第三方平台数据隐私,从本发明中用户在退出时,自动退出所有已登录的第三方平台,实现用户的统一退出。

本发明提供了一种基于oauth2.0的认证方法,包括如下步骤:

前置步骤,建立认证平台与第三方平台的密钥通信连接准备,所述第三方平台提供访问路径,开放与OAuth2.0授权相关的接口;

认证步骤,通过认证平台和第三方平台的交互,对用户发起的对第三方平台的访问进行认证,包括如下步骤:

用户通过认证平台向第三方平台发起访问请求;

第三方平台将用户访问请求重定向到认证平台,进行用户授权;

第三方平台收到授权确认后,第三方平台向认证平台发起通行令牌请求;

第三方平台收到通行令牌后,第三方平台携带通行令牌向认证平台发起认证请求;

认证平台验证通行令牌,通过验证后,发送用户信息到第三方平台;

第三方平台收到用户信息,认证完成。

优选地,认证步骤具体包括如下步骤:

用户登录认证平台,并通过认证平台向第三方平台发起访问请求;

第三方平台将用户访问请求重定向到认证平台;

用户通过认证平台进行授权;

认证平台生成授权码,并将授权码和用户请求重定向到第三方平台;

第三方平台接收授权码后,携带授权码向认证平台发起通行令牌请求;

认证平台校验授权码通过后,生成通行令牌token,将通行令牌token发送给第三方平台;

第三方平台获取通行令牌token后,携带通行令牌token向认证平台发起认证请求;

认证平台验证第三方平台发送的通行令牌token;

通过验证后,记录用户和第三方平台的关系数据;

将用户信息发送给第三方平台;

第三方平台获取用户信息,将用户登录凭证返回给用户。

优选地,用户登录认证平台后,用户通过页面选择第三方平台访问路径,向第三方平台发起访问请求。

优选地,第三方平台将用户访问请求重定向到认证平台后,用户通过认证平台进行授权前,认证平台还对用户登录状态进行判断:当用户未登录时,则转到登录授权页面;当用户已登录时,则转到授权页面。

优选地,关系数据包括用户唯一识别号和已登录的第三方平台识别号;用户信息包括用户唯一识别号、用户昵称和用户头像获取路径。

优选地,前置步骤还包括:

对第三方平台进行注册,为第三方平台提供通讯密钥;

设置第三方平台使用获取的密钥进行加密通讯。

本发明提供了一种基于oauth2.0的退出方法,包括认证平台退出方法和第三方平台退出方法;

认证平台退出方法如下步骤:

用户在认证平台发起退出请求;

认证平台返回退出响应到用户;

认证平台生成异步退出任务;

将退出任务加入到对应于该第三方平台的退出任务队列;

当退出任务达到限制数量或预设时间段内无新的退出任务加入时,向对应的第三方平台发起用户批量退出请求;

第三方平台收到退出请求后,注销用户登录凭证;

第三方平台退出方法如下步骤:

用户在第三方平台发起退出请求;

第三方平台收到退出请求后,向用户发送退出响应,注销用户登录凭证。

优选地,根据用户和第三方平台的关系数据,生成异步退出任务。

本发明提供了一种基于oauth2.0的认证及退出平台,采用上述的认证方法进行认证。

本发明提供了一种基于oauth2.0的认证及退出平台,采用上述的退出方法退出。

与现有技术相对比,本发明的有益效果如下:

1.本发明统一用户登录入口,资源提供方可通过认证平台实现用户与第三方平台的关系管理与维护;

2.本发明中账号和密码的校验在认证平台进行,在访问第三方平台期间无需填写第三方平台账号和密码;

3.本发明中认证平台和第三方平台认证成功后,第三方平台直接为用户提供登录凭证,用户直接与第三方平台进行数据交互;

4.本发明通过异步用户批量退出,提升退出响应速度,同时减轻服务器压力。

附图说明

图1是本发明的一个实施例的认证时序图;

图2是本发明的一个实施例的认证平台统一退出时序图;

图3是本发明的一个实施例的第三方平台退出时序图;

图4是现有oauth2.0认证示意图;

图5是本发明的一个实施例的认证示意图;

图6是本发明的一个实施例的认证平台认证方法流程图;

图7是本发明的又一实施例的认证平台认证方法流程图;

图8是本发明的一个实施例的认证平台统一退出方法流程图;

图9是本发明的又一实施例的认证平台统一退出方法流程图。

具体实施方式

下面结合附图,对本发明的具体实施方式作详细的说明。

本发明提供了一种基于oauth2.0的认证方法,包括如下步骤:

前置步骤,建立认证平台与第三方平台的密钥通信连接准备,所述第三方平台提供访问路径,开放与OAuth2.0授权相关的接口;第三方平台可以登录到认证平台对已提供的访问路径和回调路径进行修改,但修改后需要认证中心重新审核后才能生效。

认证步骤,通过认证平台和第三方平台的交互,对用户发起的对第三方平台的访问进行认证,包括如下步骤:

用户通过认证平台向第三方平台发起访问请求;

第三方平台将用户访问请求重定向到认证平台,进行用户授权;

第三方平台收到授权确认后,第三方平台向认证平台发起通行令牌请求;

第三方平台收到通行令牌后,第三方平台携带通行令牌向认证平台发起认证请求;

认证平台验证通行令牌,通过验证后,发送用户信息到第三方平台;

第三方平台收到用户信息,认证完成。

作为优选实施方式,认证步骤具体包括如下步骤:

用户登录认证平台,并通过认证平台向第三方平台发起访问请求;

第三方平台将用户访问请求重定向到认证平台;

用户通过认证平台进行授权;

认证平台生成授权码,并将授权码和用户请求重定向到第三方平台;

第三方平台接收授权码后,携带授权码向认证平台发起通行令牌请求;

认证平台校验授权码通过后,生成通行令牌token,将通行令牌token发送给第三方平台;

第三方平台获取通行令牌token后,携带通行令牌token向认证平台发起认证请求;

认证平台验证第三方平台发送的通行令牌token;

通过验证后,记录用户和第三方平台的关系数据;

将用户信息发送给第三方平台;

第三方平台获取用户信息,将用户登录凭证返回给用户。

认证过程是在认证平台的,第三方平台获取的是认证结果和用户数据,第三方平台需要记录用户唯一识别号(其余用户数据看第三方平台具体业务是否需要记录),如果首次登录第三方平台,需要第三方平台进行用户创建,非首次登录,则需要第三方平台核对用户唯一识别号。

作为优选实施方式,用户登录认证平台后,用户通过页面选择第三方平台访问路径,向第三方平台发起访问请求。

作为优选实施方式,第三方平台将用户访问请求重定向到认证平台后,用户通过认证平台进行授权前,认证平台还对用户登录状态进行判断:当用户未登录时,则转到登录授权页面;当用户已登录时,则转到授权页面。

作为优选实施方式,关系数据包括用户唯一识别号和已登录的第三方平台识别号;用户信息包括用户唯一识别号、用户昵称和用户头像获取路径。关系数据包括用户唯一识别号和已登录的第三方平台识别号,当用户在认证中心中进行退出操作时,认证中心会获取该用户已登录的第三方平台的退出接口信息,通过异步任务队列发起退出请求。

作为优选实施方式,第三方平台还提供回调路径;

作为优选实施方式,认证平台生成授权码后,将授权码和用户请求重定向到第三方平台的回调路径;

作为优选实施方式,前置步骤还包括:

对第三方平台进行注册,为第三方平台提供通讯密钥;

设置第三方平台使用获取的密钥进行加密通讯。

本发明提供了一种基于oauth2.0的退出方法,包括认证平台退出方法和第三方平台退出方法;

认证平台退出方法如下步骤:

用户在认证平台发起退出请求;

认证平台返回退出响应到用户;

认证平台生成异步退出任务;

将退出任务加入到对应于该第三方平台的退出任务队列;

当退出任务达到限制数量或预设时间段内无新的退出任务加入时,向对应的第三方平台发起用户批量退出请求;

第三方平台收到退出请求后,注销用户登录凭证;

用户确认退出第三方平台;

第三方平台退出方法如下步骤:

用户在第三方平台发起退出请求;

第三方平台收到退出请求后,向用户发送退出响应,注销用户登录凭证;

用户确认退出第三方平台。

此处要看具体业务,如果第三方平台提供退出登录功能,即只退出当前第三方平台;如果第三方平台不提供退出登录功能,则由认证平台进行退出登录。

作为优选实施方式,根据用户和第三方平台的关系数据,生成异步退出任务。

本发明提供了一种基于oauth2.0的认证及退出平台,采用上述的认证方法进行认证。

本发明提供了一种基于oauth2.0的认证及退出平台,采用上述的退出方法退出。

实施例1

参照附图,根据本发明的一个具体实施方案,对本发明提供的基于oauth2.0的认证方法进行详细说明。

本发明提供了一种基于oauth2.0的认证方法,包括:

前置步骤,建立认证平台与第三方平台的密钥通信连接准备,所述第三方平台提供访问路径,开放与OAuth2.0授权相关的接口;

认证步骤,通过认证平台和第三方平台的交互,对用户发起的对第三方平台的访问进行认证,包括如下步骤:

用户通过认证平台向第三方平台发起访问请求;

第三方平台将用户访问请求重定向到认证平台,进行用户授权;

第三方平台收到授权确认后,第三方平台向认证平台发起通行令牌请求;

第三方平台收到通行令牌后,第三方平台携带通行令牌向认证平台发起认证请求;

认证平台验证通行令牌,通过验证后,发送用户信息到第三方平台;

第三方平台收到用户信息,认证完成。

实施例2

参照附图,根据本发明的一个具体实施方案,对本发明提供的基于oauth2.0的认证方法进行详细说明。

本发明提供了一种基于oauth2.0的认证方法,包括:

前置步骤,建立认证平台与第三方平台的密钥通信连接准备,所述第三方平台提供访问路径,开放与OAuth2.0授权相关的接口;

认证步骤,通过认证平台和第三方平台的交互,对用户发起的对第三方平台的访问进行认证,包括如下步骤:

用户登录认证平台,并通过认证平台向第三方平台发起访问请求;

第三方平台将用户访问请求重定向到认证平台;

用户通过认证平台进行授权;

认证平台生成授权码,并将授权码和用户请求重定向到第三方平台;

第三方平台接收授权码后,携带授权码向认证平台发起通行令牌请求;

认证平台校验授权码通过后,生成通行令牌token,将通行令牌token发送给第三方平台;

第三方平台获取通行令牌token后,携带通行令牌token向认证平台发起认证请求;

认证平台验证第三方平台发送的通行令牌token;

通过验证后,记录用户和第三方平台的关系数据;

将用户信息发送给第三方平台;

第三方平台获取用户信息,将用户登录凭证返回给用户。

实施例3

参照附图,根据本发明的一个具体实施方案,对本发明提供的基于oauth2.0的认证方法进行详细说明。

本发明提供了一种基于oauth2.0的认证方法,包括:

前置步骤,建立认证平台与第三方平台的密钥通信连接准备,所述第三方平台提供访问路径和回调路径,开放与OAuth2.0授权相关的接口;

还包括,对第三方平台进行注册,为第三方平台提供通讯密钥;

设置第三方平台使用获取的密钥进行加密通讯;

认证步骤,通过认证平台和第三方平台的交互,对用户发起的对第三方平台的访问进行认证,包括如下步骤:

第三方平台将用户访问请求重定向到认证平台;

用户通过认证平台进行授权前,认证平台还对用户登录状态进行判断:当用户未登录时,则转到登录授权页面;当用户已登录时,则转到授权页面;

用户通过认证平台进行授权;

认证平台生成授权码,并将授权码和用户请求重定向到第三方平台的回调路径;

第三方平台接收授权码后,携带授权码向认证平台发起通行令牌请求;

认证平台校验授权码通过后,生成通行令牌token,将通行令牌token发送给第三方平台;

第三方平台获取通行令牌token后,携带通行令牌token向认证平台发起认证请求;

认证平台验证第三方平台发送的通行令牌token;

通过验证后,记录用户和第三方平台的关系数据;关系数据包括用户唯一识别号和已登录的第三方平台识别号;

将用户信息发送给第三方平台;用户信息包括用户唯一识别号、用户昵称和用户头像获取路径;

第三方平台获取用户信息,将用户登录凭证返回给用户。

实施例4

参照附图,根据本发明的一个具体实施方案,对本发明提供的基于oauth2.0的退出方法进行详细说明。

本发明提供了一种基于oauth2.0的退出方法,包括认证平台退出方法和第三方平台退出方法;

认证平台退出方法如下步骤:

用户在认证平台发起退出请求;

认证平台返回退出响应到用户;

认证平台生成异步退出任务;

将退出任务加入到对应于该第三方平台的退出任务队列;

当退出任务达到限制数量或预设时间段内无新的退出任务加入时,向对应的第三方平台发起用户批量退出请求;

第三方平台收到退出请求后,注销用户登录凭证;

第三方平台退出方法如下步骤:

用户在第三方平台发起退出请求;

第三方平台收到退出请求后,向用户发送退出响应,注销用户登录凭证。

实施例5

参照附图,根据本发明的一个具体实施方案,对本发明提供的基于oauth2.0的退出方法进行详细说明。

本发明提供了一种基于oauth2.0的退出方法,包括认证平台退出方法和第三方平台退出方法;

认证平台退出方法如下步骤:

用户在认证平台发起退出请求;

认证平台返回退出响应到用户,注销用户登录凭证;

认证平台根据用户和第三方平台的状态数据,生成异步退出任务;

将退出任务加入到对应于该第三方平台的退出任务队列;

当退出任务达到限制数量或预设时间段内无新的退出任务加入时,向对应的第三方平台发起用户批量退出请求;

第三方平台收到退出请求后,注销用户登录凭证;

用户确认退出第三方平台;

第三方平台退出方法如下步骤:

用户在第三方平台发起退出请求;

第三方平台收到退出请求后,向用户发送退出响应,注销用户登录凭证;

用户确认退出第三方平台。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均包含在本发明的保护范围之内。

18页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种一体化平台基于单点登录的控制方法、装置、介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类