OAuth是目前广泛应用的开放接入标准,与OAuth1.0相比,OAuth2.0实现起来更加。OAuth的相关原理在互联网上有大量的资料可以查阅。以下是通过OAuth方式接入的说明:
第一步:应用接入申请
向中山市教育信息中心进行应用接入申请获得client_id和client_secret,这两个值是后续进行应用接口调用的关键内容
client_id: lejiaoyun
client_secret: a1a0107555b948ada6348e39376ef52b
第二步:调用OAuth2.0的authorize接口
接口URL:http://202.96.186.112:8001/cas/oauth2.0/authorize
请求方式:GET/POST
调用参数:
参数名称 | 必选 | 类型 | 介绍 |
client_id | true | string | 服务商提供的client_id |
redirect_uri | true | string | 授权后的回调地址,需与注册应用里的回调地址一致 |
response_type | true | string | 此值固定为 code |
实例
http://202.96.186.112:8001/cas/oauth2.0/authorize?client_id=lejiaoyun&response_type=code&redirect_uri=http://localhost:9080/client/oauth2-login
返回值
通过返回的值可以获得code
http://localhost:9080/client/oauth2-login?code=ST-1-CI6pBfnIO1IQtjwyMzNw-113.105.152.174
第三步:授权码交换access_token
接口URL:http://202.96.186.112:8001/cas/oauth2.0/accessToken
请求方式:GET/POST
调用参数:
参数名称 | 必选 | 类型 | 介绍 |
client_id | true | string | 服务商提供的client_id |
client_secret | true | string | 服务商提供的client_secret |
grant_type | true | string | 默认值authorization_code |
redirect_uri | true | string | 授权后的回调地址,需与注册应用里的回调地址一致 |
code | true | string | 第二步请求回来的code |
实例
http://202.96.186.112:8001/cas/oauth2.0/accessToken?client_id=lejiaoyun&client_secret=a1a0107555b948ada6348e39376ef52b&grant_type=authorization_code&redirect_uri=http://localhost:9080/client/oauth2-login code=ST-1-CI6pBfnIO1IQtjwyMzNw-113.105.152.174
返回值
通过返回的值可以获得access_token.
access_token=TGT-1-bVMN764IeAa5ea5MfBgAcIzvvh7DznaQ2QHqV70tMgnOQxIZZs-113.105.152.174&expires=7073
第四步:根据access_token获取用户信息
接口URL:http://202.96.186.112:8001/cas/oauth2.0/profile
请求方式:GET/POST
调用参数:
构建URL包括一个参数
参数名称 | 必选 | 类型 | 介绍 |
access_token | true | string | 第三部返回的access_token值 |
实例
http://202.96.186.112:8001/cas/oauth2.0/profile?access_token=TGT-1-bVMN764IeAa5ea5MfBgAcIzvvh7DznaQ2QHqV70tMgnOQxIZZs-113.105.152.174
返回值
返回用户信息
{"username":"admin"}
至此登陆成功。
http://my.oschina.net/gtwo/blog/716035
相关推荐
OAuth 2.0 协议中文译本共分为九大部分,分别介绍了 OAuth 2.0 协议的背景知识、术语中英对照表、OAuth 2.0 协议的中文译本、OAuth 2.0 协议的工作流程、OAuth 2.0 协议的安全机制、OAuth 2.0 协议的优点、OAuth 2.0...
### OAuth2.0协议原理与实现 #### 一、OAuth2.0协议概述 OAuth2.0协议是一种广泛应用于第三方登录及授权的标准协议。相比于OAuth1.0版本,OAuth2.0进行了多方面的优化和改进,例如简化了授权流程、取消了Token的...
通过研究这个项目,开发者可以学习如何在实际环境中部署和配置OAuth2.0,以及如何设计和实现单点登录解决方案,这对于构建安全的、多应用集成的网络环境非常有价值。同时,它也有助于深入理解授权和身份验证的原理,...
spring security 基于oauth 2.0 实现 sso 单点登录Demo 使用 spring security 基于oauth 2.0 实现 sso 单点登录Demo spring boot + spring security + spring security oauth
Spring Security和OAuth 2.0是两个在Web应用安全领域广泛应用的框架,它们结合使用可以构建强大的单点登录(SSO)和认证授权系统。在这个系统中,`xp-sso-server`代表了认证服务器,而`xp-sso-client-a`和`xp-sso-...
在CAS3.5.0版本中,已经支持了OAuth2.0协议,这意味着你可以利用这个特性与外部的OAuth2.0兼容服务进行交互,例如微博、谷歌、Facebook等,为用户提供更加便捷的登录体验。 集成OAuth2.0的过程通常包括以下步骤: ...
OAuth2.0是OAuth协议的延续版本,但不向前兼容OAuth 1.0(即完全废止了OAuth1.0)。 OAuth 2.0关注客户端开发者的简易性。要么通过组织在资源拥有者和HTTP服务商之间的被批准的交互动作代表用户,要么允许第三方应用...
本文提出的基于OAuth2.0的授权方案,能够对接入的客户端和用户实现双重校验,降低基于微服务的电力系统集成授权功能的复杂度。该方案引入双重校验机制,既对客户端进行授权鉴权,又对用户进行授权鉴权。 6. 优势 ...
**基于Django 2.1.2的OAuth2.0授权登录详解** OAuth2.0是一种开放标准,用于授权第三方应用访问用户存储在另一服务提供商(如社交媒体网站)上的私有资源,而无需共享用户的登录凭证。在Django框架中实现OAuth2.0...
在本文中,我们将深入探讨 OAuth 2.0 的核心概念,并结合 Java 实现来理解其工作原理。 OAuth 2.0 主要分为四个角色:资源所有者(Resource Owner)、客户端(Client)、授权服务器(Authorization Server)和资源...
结合“oauth2.0”,我们可以理解这个项目是关于如何在帝国CMS中实现基于OAuth2.0协议的单点登录解决方案。 OAuth2.0是一种开放标准,主要用于授权,允许第三方应用在用户许可的情况下,获取一定的权限来访问用户的...
OAuth2.0是一种广泛使用的开放授权协议,它允许第三方应用在用户无需透露其登录凭证的情况下,获取有限的访问权限去操作用户的资源。这个协议的主要目的是为了解决API的安全访问问题,尤其是在社交媒体、云存储和...
微博OAuth2.0协议是微博平台提供的一...通过以上步骤,你就能在Java应用中实现微博OAuth2.0协议的单点登录功能,获取并使用微博用户的个人信息。记得在开发过程中,遵循微博开放平台的相关规定,确保用户数据的安全性。
在"OAuth2.0代码模拟实现"项目中,我们看到两个服务器端项目——"wx-server"和"zking-server",以及一个名为"pom.xml"的文件,这通常表示项目是基于Maven构建的Java应用。下面我们将深入探讨OAuth2.0的实现细节以及...
OAuth2.0是一种广泛使用的开放授权协议,它允许第三方应用在用户许可的情况下,访问特定的受保护资源。这个协议在互联网服务中起到了关键作用,尤其是涉及到用户数据安全和隐私的场景。下面将详细介绍OAuth2.0的核心...
微信OAuth2.0授权是一种广泛应用于移动应用和网站的第三方登录解决方案,主要目的是为了安全地获取用户的微信身份标识——openid,以便提供个性化服务或者与其他微信功能集成。在本文中,我们将详细探讨微信OAuth2.0...
**OAuth2.0简介** OAuth2.0是一种授权框架,广泛应用于Web API的身份验证和授权。它允许第三方应用在用户授权的情况下,访问该用户的特定资源,而无需获取用户的用户名和密码。OAuth2.0的核心是将认证和授权分离,...