您的位置 首页 java

很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

对于注册后的密码登录、第三方登录,大家可能了解得比较多。如下是密码登录和第三方登录的典型界面,一起来看一看:

很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

那么,你了解验证码登录和 SSO (Single Sign On)登录吗?无论是在实际工作中,还是在笔试面试中,验证码登录和SSO登录几乎都是绕不开的重要问题。

对于一个互联网人来说,无论是从事何种岗位的工作,都建议来了解这些常见的登录。今天,我来具体聊下这两块,内容不会很复杂,就当是 科普 性质的介绍。

一. 验证码登录

前几年,我意外地发现, 微信 没有让用户感知到密码的存在。对于熟悉了账号密码登录方式的我们来说,微信用户居然不需要关注密码,这一点真是做得太成功了。

另外,你应该有这种体会,你登录银行APP时,也不需要输入密码,只需要输入手机短信的验证码。这可省心多了,免得去记忆密码。 下面,来聊手机验证码登录。

我们来看看 知乎 网站的登录界面,如下图所示:

很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

具体的方式,应该很清楚了:用户输入手机号码,系统给该手机号码发送验证码,用户收到短信中的验证码后,输入验证码作为临时密码,从而登录系统。

为了安全起见,验证码都有时效性,一般就几分钟,过期无效,这个过期时间通常是在后端设置的。所以,我们要注意,手机的验证码千万不要泄露给别人。

至于后端的开发,那其实也很简单,核心原理就是触发发送短信,然后匹配验证。现在,各种指纹登录、刷脸登录、视频登录的方式层出不穷,原理都类似。

比如,从上图可知,除了短信验证码,还有语音验证码:系统自动给用户打电话,播报包含验证码的语音,用户听懂语音中的数字后,作为验证码登录系统。

很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

二. SSO 登录

关于SSO 登录,其目的是为了解决多系统的统一一次登录问题,业界常用 单点登录 。我来举个例子,你就明白了。

刚才我特地验证了一下:当我登录淘宝网页后,打开 天猫 网页时,天猫也自动登录了,这其实就是SSO单点登录。

从业务上讲,淘宝和天猫都是 阿里巴巴 的亲儿子,让它们共用账号体系,也是顺其自然的事情,用户也方便多了。

但淘宝和天猫域名不同,存在跨域问题,无法直接实现 cookie session 共享,那么淘宝和天猫如何实现SSO呢?

从技术上讲,SSO有很多种实现方式,淘宝和天猫的具体实现方式,我们不得而知。下面,我来聊一种典型SSO.

下图是SSO流程,其中CAS Server是SSO后端, Protected App是淘宝后端,Protected App #2是天猫后端:

很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

我们可以看到,通过SSO, 如果用户登录了淘宝,自然就登录了天猫。如果退出登录淘宝,天猫自动退出登录。

SSO的原理并不难,搞懂了SSO, 有利于理解前端和后台的一些重要知识。SSO也是很多笔试和面试的常见考点。

如果是工作中,你当然可以去网上查一些资料。但是,如果是面试现场,让你讲清SSO登录原理,也要了如指掌。

很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

好的,关于验证码登录和SSO登录,先聊这么多,如果大家有疑问,欢迎随时来交流。 今天先这样,咱们明天见

本人花费2个月时间,整理了一套 JAVA 开发技术资料,内容涵盖java基础,分布式、微服务等主流技术资料,包含大厂面经,学习笔记、源码讲义、项目实战、讲解视频。

很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

java面试资料

很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

文章来源:智云一二三科技

文章标题:很多初级程序员对扫码登录 SSO登录 第三方登录不了解,原理很巧妙

文章地址:https://www.zhihuclub.com/201152.shtml

关于作者: 智云科技

热门文章

网站地图