Oauth2系列3:接入前准备

目录

传送门

阿里云IDaaS

什么是IDaaS

oauth2模板

模板内容

阿里与微信注册信息对比

如何实现一个oauth2协议?


传送门

Oauth2系列1:初识Oauth2

Oauth2系列2:授权码模式

在前面二节,对oauth2有了一个初步概念。这里要讨论一下oauth2接入流程,虽然这个并不在协议规范中,但其实这一步是并不可少的。而且各大开放平台的实现也不尽相同!

现在就结合微信与阿里云来看下,具体的接入前准备流程是什么

阿里云IDaaS

什么是IDaaS

阿里云应用身份服务IDaaS(英文名:Alibaba Cloud Identity as a Service,简称IDaaS)是阿里云为企业用户提供的一套集中式身份、权限、应用管理服务,IDaaS支持多种产品,下面具体介绍产品信息。

更多的查看这里什么是IDaaS

oauth2模板

上面的IDaaS可以做个了解即可,在这个产品里面,阿里也用到了ouath2协议,实现单点登录。

场景:SP发起单点登录时序

上面这个流程其实跟微信第三方登录大致是一样的。这里有兴趣的可以通过上面的官网去仔细阅读一下。

言归正传,要使用IDaaS的这个功能,需要使用到OAuth2.0模板

OAuth2.0模板是IDaaS产品定义的出来的一种单点登录场景,即采用oauth2协议实现单点登录的客户端配置信息。如果按照这种模型设计,微信的第三方登录,其实可以映射为IDaaS的OAuth2.0模板的一种应用场景

模板内容

如果要申请一个oauth2.0模板,其实主要要关注几个字段

  • GrantType : 选择authorization_code(授权码模式),一般都建议用这种模式
  • Redirect URI : 填写需要使用OAuth2单点登录应用的URL,这个是需要每个业务系统单独开发的,用于接收code(授权码)
  • 应用名称:业务系统的名称,可以自行定义

下面是一张应用了oauth2模板的测试截图

 从上面可以发现,开放平台会为系统默认生成几个字段

  • 应用ID:应用的唯一id
  • client_id:客户端应用id,这个类似微信的appid(这个也是微信开放平台颁发的)
  • client_secret:应用身份密钥,类似微信的secret

这一步完成之后,才会有前面提到的oauth2的获取授权码code及令牌token接口。

Request URI: https://{IDaaS_server}/oauth/token?grant_type=authorization_code&code={code}&client_id={client_id}&client_secret={client_secret}&redirect_uri={redirect_uri}

阿里与微信注册信息对比

通过一个表格来看一下,获取令牌接口,应用注册之后需要用到的信息。

阿里微信
授权码codecode
grant_typeauthorization_codeauthorization_code
应用IDclient_idappid
身份密钥client_secretsecret
重定向 urlredirect_uriredirect_uri

发现没有,其实需要的信息及字段都是一致的,只不过是开放平台定义的字段名称有差别。

如何实现一个oauth2协议?

所以,如果是要实现一个oauth2协议,要怎么设计呢?

肯定是要设计一个应用注册,模型可以类似阿里的oauth2模板

在下一节,我们会实现一个简版的oauth2协议 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值