认证授权是目前大多数系统都必须要实现都功能,认证就是验证用户都身份,授权就是验证身份后对受限资源的访问控制。最开始是单个平台要做,后来在互联网时代到来,一个账户可登陆多个平台,然后是各种开放平台账户共享,认证授权变的越来越重要。关于验证授权方面的规范协议也相对成熟通用。

最早出现的认证授权协议是SMAL,一般用在企业级单点登陆场景。平时接触到的不多。

OAutho是看到的用的比较多的认证协议,尤其是在API认证授权时用,最开始是1.0版本,后来因为有回话攻击、会话劫持的漏洞,出了1.0a版本,讲回调链接前置、增加安全验证签名等,但编程实现较麻烦,后来出现OAuth2版本,但不兼容之前的版本。一般见到大多数时用OAutho2或OAutho1.0a。

OpenId一开始出现是为了解决认证的问题,后来出现了OpenId Connect,在OAutho的基础上也可以实现授权的功能。

对比点 OAuth2 OpenID SMAL
票据格式 JSON or SAML2 JSON XML
支持授权 Yes No Yes
支持认证 “伪认证” Yes Yes
创建年份 2005 2006 2001
最新版本 OAuth2 OpenID Connect SAML 2.0
传输方式 HTTP HTTP GET and HTTP POST HTTP重定向,SAML SOAP绑定,HTTP POST绑定等
安全弱点 不能抵抗网络钓鱼,OAuth没有使用数据签名和加密等措施,数据安全完全依赖TLS 不能抵抗网络钓鱼,一个钓鱼的IDP如果恶意记录下来用户的OpenID,将会造成很严重的隐私安全问题 XML签名存在漏洞,可能被伪造
使用场景 API 授权 商用应用的单点登录 企业级单点登录,但是对于移动端支持不是很好
对比表格来源:http://www.jianshu.com/p/5d535eee0a9b

认证与授权协议对比:OAuth2、OpenID、SMAL相关推荐

  1. 统一身份认证和授权--微服务架构

    一.预备知识 本文讨论基于微服务架构下的身份认证和用户授权的技术方案,在阅读之前,最好先熟悉并理解以下几个知识点: 微服务架构相关概念:服务注册.服务发现.API 网关 身份认证和用户授权:SSO.C ...

  2. 单点登陆(SSO)协议简介:OpenID、OAuth2、SAML

      主要用于第三方应用登录,例如使用QQ或微信登录其他的应用或网站等.目的在于限制用户身份,有效的身份才能浏览相关的内容.这就是认证和授权!! 1 OpenID   它是一种认证标准,用户要使用Ope ...

  3. 服务架构:统一身份认证和授权技术解决方案

    本文讨论的是基于微服务架构下的身份认证和用户授权的技术方案,从背景到微服务架构整套流程分解. 一.预备知识 本文讨论基于微服务架构下的身份认证和用户授权的技术方案,在阅读之前,最好先熟悉并理解以下几个 ...

  4. ASP.NET Core 认证与授权[3]:OAuth OpenID Connect认证

    在上一章中,我们了解到,Cookie认证是一种本地认证方式,通常认证与授权都在同一个服务中,也可以使用Cookie共享的方式分开部署,但局限性较大,而如今随着微服务的流行,更加偏向于将以前的单体应用拆 ...

  5. [认证授权] 5.OIDC(OpenId Connect)身份认证授权(扩展部分)

    [认证授权] 5.OIDC(OpenId Connect)身份认证授权(扩展部分) 原文:[认证授权] 5.OIDC(OpenId Connect)身份认证授权(扩展部分) 在上一篇[认证授权] 4. ...

  6. OIDC认证授权协议

    一.OIDC简介 OIDC是OpenID Connect的简称,OIDC=(Identity, Authentication) + OAuth 2.0.它在OAuth2上构建了一个身份层,是一个基于O ...

  7. 基于CAS搭建OIDC认证授权协议

    OIDC协议作为以OAuth2为基础衍生的出新的认证授权协议,将OAuth2的授权协议与OpenId的认证协议相结合,从而生产的新的sso协议OIDC协议(OpenID Connect).本文讲解的是 ...

  8. OAuth2.0认证和授权原理

     什么是OAuth授权? 一.什么是OAuth协议 OAuth(开放授权)是一个开放标准. 允许第三方网站在用户授权的前提下访问在用户在服务商那里存储的各种信息. 而这种授权无需将用户提供用户名和 ...

  9. OAuth2.0授权协议与客户端授权码模式详解

    本文来重点讲解下OAuth2.0授权协议与客户端授权码模式 文章目录 什么是OAuth协议 交互过程 客户端授权模式 授权码模式 简化模式 密码模式 客户端模式 接入公司内部系统 后台管理系统 前台业 ...

最新文章

  1. 通俗易懂!《图机器学习导论》(附链接)
  2. sql 计算空间列两地点之间距离
  3. Ubuntu21.04 deepin-wine 微信输入中文乱码,黑块,和多余窗口问题解决
  4. Android 优化电池使用时间——确定和检测网络状态
  5. 信息学奥赛C++语言: 蛇形方阵1
  6. anaconda windows theano keras 完全安装教程,没有gpu忽略那段话也成功了
  7. meta 标签的详细使用
  8. 你是农村人吗,小时候放过牛吗,都有哪些好玩的趣事?
  9. win7下jdk+eclipse android应用开发环境建立
  10. ExtJS视频学习笔记
  11. safari java 插件_精通Safari – 如何在 Mac 版 Safari 中使用互联网插件
  12. 百度推出新版团购导航 对团购导航造成冲击
  13. [轉貼]奋斗5年从月薪3500到700万!
  14. 常见几种校验方法(CS和校验、CRC16、CRC32、BCC异或校验)
  15. Steam游戏信息爬取-热销榜价格好评率折扣评论
  16. C++中模板的特化与偏特化
  17. C++封装zlib库
  18. 【JY|理念】结构概念设计之(设计理念进展)
  19. 人脸颜值预测(facial beauty prediction)综述
  20. Dijkstra算法(最短路径)

热门文章

  1. 6款必备的团队协同工具
  2. 寒假集训D2.22.12.29
  3. 内部类(成员内部类、静态内部类、方法内部类)
  4. OUC2022秋季软工09组第五次作业
  5. 在IE临时文件夹中找文件
  6. 电子货架标签----智能路由
  7. try-catch的基本使用方法
  8. 吸顶灯怎么固定天花板_如何安装天花板电灯
  9. 小黑小波比.功能测试问题解决
  10. 抓住机遇 开拓创新 加快推进我国数字图书馆建设