单点登录SSO、OAuth、LDAP、CAS的流程与应用_wxb880114的专栏-程序员宅基地

技术标签: springboot  

单点登录 - SSO

     现阶段互联网中拥有着大量的应用系统,极大地提升了大家的工作效率与生活质量。然而大量的应用系统拥有着不同的认证与授权模式,这使得用户需要大量记忆用户名与口令,并多次登录和注册所需要使用的系统,这使得用户的使用体验非常的糟糕。因此,单点登录系统(SSO,Single Sign-On)应运而生。

单点登录 - SSO

单点登录 - SSO

 

常见的应用有两种情况:

  • 在一个单位中,需要使用多个功能不同的系统应用,比如企业会有专门的财务系统,销售的CRM系统,人事的OA、邮箱系统,如果每个系统都用独立的账号认证体系,会给员工带来很大困扰,同时不方便管理。所以需要设计一种统一登录的解决方案。
  • 现在是App爆炸的时代,如果每个App都需要独立的登陆账号和密码,肯定不方便用户管理,所以需要设计一种可多平台授权登陆的解决方法,比如:我登陆淘宝时使用支付宝授权认证登陆,使用微博时使用微信授权登陆。

SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。今天软盟网小编就上述的两种情况跟大家一起探索当中的流程区别和应用实践。

 

OAuth2.0

OAuth 2.0是一个关于授权的开放网络协议,它允许用户让第三方网站访问该用户在某一网站上存储的信息和资源,如账户信息,照片,联系人等,而不需要给第三方网站提供某一网站上的账户和密码。

OAuth2.0

OAuth2.0

OAuth授权流程如下所述:

1、用户打开客户端,客户端要求授权。

2、用户同意客户端授权。

3、客户端使用上一步提供的授权,向服务器授权层申请令牌。

4、授权服务器对客户端进行认证后,同意发放令牌。

5、客户端使用令牌,向资源服务器申请资源。

6、资源服务器确认令牌,向客户端开放资源。

OAuth 场景说明:

比如小编之前在碎片时间多是使用头条来获取最新的信息资讯,最近了解抖音很火,就下载了抖音,选择登录注册页面时可以使用头条作为登录的授权

5分钟明了单点登录SSO、OAuth、LDAP、CAS的流程与应用

5分钟明了单点登录SSO、OAuth、LDAP、CAS的流程与应用

 

多平台登录多用于多个合作企业间通过互联网相互协助验证用户的身份,电商网站广泛使用社交网站的账号进行多平台登录,可以起到客户引流、降低首次购买门槛、营销跟踪等效果。

LDAP

LDAP是一种基于轻量目录访问协议,全称是Lightweight Directory Access Protocol,是由一个为查询、浏览和搜索而优化的数据库构成,它成树状结构组织数据,类似文件目录一样。

LDAP单点登录认证主要是改变原有的认证策略,使得需要的软件都通过LDAP服务器进行认证,在统一身份认证后,用户的所有信息都存储在AD Server中,终端用户在需要使用公司内部服务的时候,都需要通过AD服务器进行认证。

整个LDAP登录流程由以下4个步骤组成:

1、连接到LDAP服务器。

2、绑定到LDAP服务器。

3、在LDAP服务器上执行所需要的操作。

4、释放LDAP服务器的连接。

LDAP场景说明:

企业内部需要认证的服务很多,员工需要记住很多的密码, 即使对这些服务进行相同的密码设置,也存在很大的安全隐患。比如我们公司,有jira、confulence、gitlab、北森等系统,

5分钟明了单点登录SSO、OAuth、LDAP、CAS的流程与应用

5分钟明了单点登录SSO、OAuth、LDAP、CAS的流程与应用

使用场景是提高用户在同一个企业的多个站点(域名)之间的无缝浏览体验,例如企业内部可能有多个处理不同业务的系统(OA系统,邮箱,财务等),用户只要在一个系统上保持登录状态,即可无需再次登录访问其他内部系统。

CAS

SSO 仅仅是一种架构,一种设计,而 CAS 则是实现 SSO 的一种手段。两者是抽象与具体的关系。

CAS即Central Authentication Service模型(中央式认证服务),该协议是为应用提供可信身份认证的单点登录系统,最初是由耶鲁大学开发的。CAS 包含两个部分: CAS Server 和 CAS Client。CAS Server 需要独立部署,主要负责对用户的认证工作;CAS Client 负责处理对客户端受保护资源的访问请求,需要登录时,重定向到 CAS Server。

CAS

CAS

CAS的详细流程如图所示:

CAS的详细流程

CAS的详细流程

 

总结

今天介绍的几种单点登录系统,均具有较高的安全性,都能较好地完成单点登录系统的需求。

  • OAuth协议能广泛应用于互联网中,基于大企业的巨大用户量,能减少小网站的注册推广成本,并且能做到更加便捷的资源共享。
  • LDAP协议适用于企业用户使用,通过LDAP协议,能较好地管理员工在公司各系统之间的授权与访问。
  • CAS模型,作为权威机构开发的系统,具有很好的兼容性与安全性,广泛应用于各大高校等大型组织,能很好地完成大量系统的对接与大量人员的使用。

可根据自身需求,选择不同的单点登录系统,来满足目标用户的使用。

来自:网络。整理:www.ruanally.com

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wxb880114/article/details/101370975

智能推荐

mysql 解决主从延迟的方发二_awesome_go的博客-程序员宅基地

今儿打算给大家分享的是如何解决MySQL主从延迟的问题,这个也是一些同学在生产中面临的比较棘手的问题, 经常给我打电话或者微信,说张老师,现在监控主从之间的延迟特别大。怎么办啊?!有什么办法可以避免延迟嘛?!面对抛出这样的问题,我们先来了解下生产中有哪些主从架构?线上生产环境一般有一主一从,一主多从,多主一丛(级联复制,MySQL5.7之后才有) ,主主复制。主从架构存在目的就...

系统管理员漫谈企业内部图书馆的建立与日常管理_weixin_34101784的博客-程序员宅基地

本文纯属个人见解,是对前面学习的总结,如有描述不正确的地方还请高手指正~    原文:    http://www.lifelaf.com/blog/?p=287    每日一道理 岭上娇艳的鲜花,怎敌她美丽的容颜?山间清澈的小溪,怎比她纯洁的心灵?    对于技巧密集型的企业、门部,建立和护维一个部内藏书楼可以更好地为员工供提学习资料,增强员工间的技巧交流,并有助...

windows10构建局域网FTP服务器(用于IPhone文件传输)_大地。的博客-程序员宅基地_win10 内网ftp

构建WINDOWS中的FTP服务器,在局域网内设置,并使用IPhone登录FTP服务器进行文件传输。

Google AdSense注册流程_好人不心的博客-程序员宅基地_谷歌adsense注册

2022年最新版网站发布商 adsense注册申请指南/谷歌广告联盟账号过审教程 – GG联盟挑战 (zcot.cn)

php输出txt文件乱码,php生成txt乱码_weixin_39639381的博客-程序员宅基地

前言相信很多人在使用PHP的过程中都遇到过生成文件乱码的情况,不论是使用fwrite还是file_put_contents写入。可能你会先尝试从编码入手尝试解决,但最终的结果往往是不理想的,尽管我们都将其转换为了UTF-8编码了...那么究其根本原因是什么呢?一句话:缺少头部BOM(当然,这里指的肯定不是Js的Bom)BOM既然提到了BOM,那么可能有的同学不太了解这个家伙,这里我简单说一下,老鸟...

linq to xml操作XML_weixin_34018169的博客-程序员宅基地

linq to xml操作XML LINQ to XML提供了更方便的读写xml方式。前几篇文章的评论中总有朋友提,你为啥不用linq to xml?现在到时候了,linq to xml出场了。.Net中的System.Xml.Linq命名空间提供了linq to xml的支持。这个命名空间中的XDocument,XElement以及XText,XAttribute提供了读...

随便推点

基于arcgis对安徽水体富营养化的研究_weixin_34331102的博客-程序员宅基地

水体富营养化是生物所需的氮、磷等营养物质大量进入湖泊、河海湾等缓流水体,引起藻类及其他浮游生物迅速繁殖,水体溶解氧量下降,水质恶化,鱼类及其他生物大量死亡的现象。近年来安徽地区淮河、长江、巢湖等地区水体富营养化尤为严重,导致大量的“浮萍”、“蓝藻”、“赤潮”等情况出现,严重地影响了经济、生活和生态环境。因此如何防止水体富营养化已经成为了当今研究的重要课题,本产品是基于...

python mql4_Python语言稳居2015年12月编程语言TOP 4_weixin_39792393的博客-程序员宅基地

Python编程语言早已呈现了逐年上升的趋势,现如果以经可以在编程语言界前三中站稳脚跟。当然Java还是要比Python受众更多一些,但Python的崛起,而且无处不在使用它,Python是当前脚本的标准。 编程语言排行榜是编程语言流行趋势的一个指标,会定期的每月进行更新。Python语言稳居去年12月编程语言排名,这个月的排名是什么样子的,我们一起来看下。由图中的统计结果可以看出,在今年的12月...

CDN知识详解_普通网友的博客-程序员宅基地

CDN全称:Content Delivery Network或Content Ddistribute Network,即内容分发网络基本思路:尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量...

codeforce-298B Sail(模拟)_basketball616的博客-程序员宅基地_codeforce 大模拟

B. Sailtime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputThe polar bears are going fishing. They plan to sail from (sx, sy) to (ex,...

加密解密_weixin_30348519的博客-程序员宅基地

2013年9月23日转: Generating a Key from a Password.NET Security Bloghttp://blogs.msdn.com/b/shawnfa/archive/2004/04/14/generating-a-key-from-a-password.aspxIf you're trying to encrypt data usin...

经典重译 | 来自华盛顿大学教授的机器学习“内功心法”_weixin_34361881的博客-程序员宅基地

本文最初发表在 《ACM通讯》2012年第10辑。作者是华盛顿大学教授,著名的机器学习专家 Pedro Domingos。作者2016年凭借畅销书《终极算法》而名声大噪,成为全球机器学习领域代表人物之一。而5年前 Domingos 教授发表的这篇“内功心法”,也是整个国外机器学习领域几乎人人必读的一篇文章。在很多大学的机器学习课程以及优达学城等在线培训体系中,都推荐学生精读此文。这篇文章高屋建瓴的...

推荐文章

热门文章

相关标签