单点登陆(SSO)简介

本文汇总了html

的内容,版权归原网站全部!git

什么是单点登陆

单点登陆(SSO)是一种容许用户仅使用一组登陆凭据(例如,一个用户名和密码)登陆,从而能够安全地认证多个应用程序的系统。使用 SSO,用户尝试访问的应用程序或网站依赖于受信任的第三方来验证用户身份。一个例子就是你天天要用的谷歌的在线应用套件。github

为何单点登陆很重要?

单点登陆能够帮助公司提升工做效率,节省时间和金钱。数据库

在用户方面,SSO 节省了时间和精力,由于用户没必要重复登陆多个应用程序。这提供了简化的(steamlined)用户体验,减小了软件因处理许多不一样的密码和用户账户而遇到的账户访问问题。安全

单点登陆也很是适合管理员。中心化的 SSO 系统更容易在不一样应用间监控用户帐户。它减小了访问问题(例如错误密码或忘记密码)的数量,节省了管理员和技术支持人员的时间。另外,由于注册时仅需一个密码,也减小了须要维护的密码数量。微信

没有 SSO 的认证如何工做?

若是没有单点登陆,每一个网站都会维护本身的用户及其凭据数据库。当你尝试登陆应用或网站时会发生如下状况:cookie

  1. 该网站首先检查你是否已通过身份验证。若是有,它可让您访问该网站。
  2. 若是尚未,它会要求你登陆,并根据其用户数据库中的信息检查你的用户名和密码。
  3. 登陆后,当您在网站中浏览时,网站会传递身份验证验证数据,以确认每次转到新网页时都会对您进行身份验证。
    用户请求访问
    用户已受权的访问,以后访问新网站
    身份验证数据一般用带有会话数据的 cookie 或做为令牌传递,不跟踪会话而且处理速度更快。

SSO 如何工做?

使用 SSO 进行身份验证依赖于域(网站)之间的信任关系。经过单点登陆,当你尝试登陆应用或网站时会:网络

  1. 用户访问目标域。网站首先检查你是否已通过 SSO domain 的身份验证,若是是,它可让你访问该网站。
  2. 若是尚未,它会将你重定向到 SSO domain 进行登陆。
  3. 你输入用于企业访问的用户名/密码。
  4. SSO tool 从公司使用的身份提供商或身份验证系统请求身份验证,生成一个加密令牌。
  5. SSO server 将身份验证数据传递到网站并将你带回到该站点。
  6. 加密令牌做为你已经被受权的凭证。
  7. 当你在网站中浏览时,网站会携带身份验证数据,每次转到新网页时都会确认你的身份验证。

用户请求访问
用户已受权的访问,以后访问新网站

基于令牌的身份验证是另外一个重要的登陆概念(在此处了解更多信息)。 SSO系统基本上依赖于这些令牌来“记住”已经容许用户访问与该中央 SSO 相关联的全部应用。dom

SSO身份验证是否安全?

简短的回答是:是的。SSO 系统在正确实现并与其余现代网络安全工具一块儿使用时很是安全。工具

详细的回答。SSO 身份验证系统能够提升互联网的总体安全性,主要有两个缘由:

  • 减小了人们在互联网上建立和使用的弱密码的数量。
  • 建立了更集中的系统,管理员能够更轻松地进行管理和保护。

可是,将多个流程集中到一个系统中也存在一些风险。若是黑客进入该中央系统或窃取用户密码,他们就能够访问链接到该 SSO 系统的全部应用程序和工具。

值得庆幸的是,向 SSO 登陆系统添加额外的安全工具很容易。

SSO 与 OAuth

通俗的解释,SSO 是处理一个公司内的不一样应用系统之间的登陆问题,好比阿里巴巴旗下有不少应用系统,咱们只须要登陆一个系统就能够实现不一样系统之间的跳转。

OAuth 是不一样公司遵循的一种受权方案,也是一种受权协议,一般都是由大公司提供,好比腾讯,微博。咱们经常使用的QQ登陆,微博登陆等,使用 OAuth 的好处是可使用其余第三方帐号进行登陆系统,减小了因用户懒,不肯注册而致使用户流失的风险。

如今一些支付业务也用 OAuth,好比微信支付,支付宝支付。还有一些开放平台也用 OAuth,好比百度开放平台,腾讯开放平台。

CAS 单点登陆的流程以下:


扩展阅读:

  1. mp.weixin.qq.com/s/TSkdxVN9m…
  2. juejin.im/post/5a002b…
  3. apereo.github.io/cas/4.2.x/p…
相关文章
相关标签/搜索