OIDC–基于OAuth2的下一代身份认证授权协议

OIDC(OpenID Connect), 下一代的身份认证授权协议; 当前发布版本1.0;

OIDC是基于OAuth2+OpenID整合的新的认证授权协议; OAuth2是一个授权(authorization)的开放协议, 在全世界得到广泛使用, 但在实际使用中,OAuth2只解决了授权问题, 没有实现认证部分,往往需要添加额外的API来实现认证; 而OpenID呢,是一个认证(authentication )的协议, 二者在实际使用过程中都有其局限性;

综合二者,即是OIDC; 通过OIDC,既能有OAUTH2的功能,也有OpenID的功能; 恰到好处…

OIDC将是替换(或升级)OAuth2, OpenID的不二选择..

OIDC在OAuth2的access_token的基础上增加了身份认证信息; 通过公钥私钥配合校验获取身份等其他信息—– 即idToken;

一个使用JWT生成的idToken(base64):

eyJhbGciOiJSUzI1NiIsImtpZCI6IjM3MTc2NjA0OTExODEyNzkwNzgifQ.eyJpc3MiOiIxMTExIiwiYXVkIjoiMTExMSIsImF0X2hhc2giOiI4ZjgxYThjOS1jNWJiLTQwOWMtYjI0Ni1lMzEyZmUwYzM4NWMiLCJyZWdpc3RyYXRpb24iOiIxMjM0NTY3OCIsImV4cCI6MTQ2MzYyMjA4NiwianRpIjoiRnl5aGZOYnQtU0NLR2tpTWRGMVg2dyIsImlhdCI6MTQ2MzU3ODg4NiwibmJmIjoxNDYzNTc4ODI2LCJzdWIiOiJsc3otb2lkYyJ9.hDCcs8PISdwUPp6Eyd-9JCeeTJ2ZtscBeuPITIt43gMYbddiUBLC90uT9bxKe6e3awHels3asEMreFtlnlY09PwdCxXvhjYcEiXO_dnzqu-zQXESHzPEE6d1WsZUcbj6yxoxMh0laba24uu3CbqSRQbOrsYmh2_XA5Q5eP66iOajRUDhNXhmsWEL85jtL9_h0SyfRNPZ9C0mRu2x9YZTHT129O53ggqtjwQxrXLAbCd1dd35DyIztagqQWDpo3gFG7YseNEiQ6Mf2D6nIBU9llAqH4sTThq_ahME06qKENat_sxnmIJN2UHw7u0E08S-59oxtOY9winT78Qj5IfWJw

 

在OIDC协议的实现中, 其底层是基于OAuth2. 一些常用的库如: JWT(https://jwt.io/), JWS; OAuth2的实现如: Spring Security OAuth, OLTU.

更多信息可参考: http://openid.net/connect/

OIDC 1.0协议: http://openid.net/specs/openid-connect-core-1_0.html

拥抱OIDC…

openid-r-logo-900x360

Three

Three是三,也就是三个人,刘chuenye,王bo与李shengzhao。
刘是大,生于1985年,面较黑,体较肥;王次之,是上大学最好的一个;李最小,后两位于1986年和世界见面的,高中之前的世界里,他们已存在,各自活在自己的天空下。
一切都是从高中--叙永一中的校园里开始的。

2002年的9月,我们的高中开始…
no1_middle

提着行礼,奔赴各自的宿舍,李是553,刘是223吧,王的不清楚了。刘与王是幸运的,高一在六班,李在二班,“你的表情看起来总是一副被人欺负的样子”刘说的。故事源于足球。

刘与李都是喜欢足球的,有周六下午或有天日的下午都去足球场踢球的。刘与李就是这样认识的:经常在一起踢球,次数多了也就彼此开始打招呼,李在饭堂里也是经常看见刘的,他俩在不相识的情况下彼此借钱了。
那天(具体时间去问问历史)刘在饭堂借了李十元钱,李看了看他,有点熟悉,借了,没问别的,打饭吃去了。还是某一天,李去打饭时向别人借钱没借到,刘看见了走上来说,我借你十元钱。李忘了曾借给刘的十元钱,也就接了,还说会还的。这种事我在一中是碰到过的,我有一次买面时一个头从后面伸出来说,把两毛的饭票给我,我差两毛呢,说着就拿,而我则没有反应,那人我不认识,我还没回过神来呢。
这个借十元钱的事就这样结束了,可生活就是一些故事的集合。

刘在二楼向上叫五楼的那个,下来踢球啊,李就会在楼上应一声的,有时李也去叫刘,但很少,因为刘在二楼的宿舍是李下楼必须经过的。李比较内向的,有时刘问李有没有球,李有的时候就会借给刘的,如此过了很久…都和足球有关。
刘的球踢的不错,传球很到位,7号的球衣,自称:贝克汉姆,可大家的叫法是:刘克汉姆。他是个球材--踢球的人才。李是被人发觉当后卫而可以出点人气的,李的第一场正式比赛位置右后卫,后来踢完的评价是:还不错,可还不完全放开,想想和内向的性格有关的。

2008年的1月9日,李在西安的宿舍里写着Three的故事,而王,刘在另外的两个城市,他们可不知李在写他们的故事的…

wbo2

关于王
王,王bo,全名也叫王bo。昨晚给李打电话(时长:15分15秒),原因是李走过了21个春夏秋冬了。李经常给王打电话,信息的交流也是不少的。
王和李是在高二的时候才开始的。可不用说他们的见面就知道后来有很长的故事。刘说:李比王聪明,可王比李勤奋,努力。结果是明显的:王去了一本,李去了二本,而刘呢?暂且不说了。
王的身高和他在Three中的位置一样,王爱学习,说话和做事是很成熟的。在李看来,王,刘还有别的人在校园后面租一间房,李是经常去光顾浏览那儿的,有时就留宿那儿了。
高二,分了文理班,王,5班,刘,9班,理科班,李,4班,文科班;那幢教学楼的三楼有李,二楼有王,一楼有刘。
王就是爱学习,李与刘去踢球王是不去的,也很少见他在篮球场上跳跃,可后来真看了王打球才知道,他是真人不露相啊,我们就在旁边看。
嗯,王的身体是不太好的,经常与药物联系不断,脸也经常有些异物光顾。刘还说他小时候断过脚,所以老是跑得不是很快,李的小时候是爱爬树的,放牛的日子也不少。

聚会
三个人走到了一起。
刘,王,李三人去了叙永中环路的一家馆子,是一家“人人猪蹄子火锅”的店,这个名字很有印象的。刘还不忘告诉李回去告诉她我们今天吃猪蹄子。我们一边吃,一边喝,一边说。因为这聚会之后我们就是三个兄弟了。
刘说:李有什么就要说出来哦,不然以后就没机会说了哦,李是笑一笑,反正刘是说话最多喽,不仅他占大,他太会也太爱说话了。
我们没有对天发誓,没有跪拜天地,也没有说什么不求同年同月同日生,但求同年同月同日死等等话,可那之后,兄弟就是了,兄弟是一辈子的。过去是,现在是,将来是。
记得李给他的同桌zhu说:我和刘,还有王是结拜的弟兄了,zhu也是笑笑说:我小时候也干过这种事,可都是小孩子,不会认真的,大家说说罢了。但李认识的:我们不是玩玩的。也许那是一切很单纯,可因为单纯才显得真实,尽管那时的刘看起来说起话来真是油嘴滑舌呢。记得刘在进大学不久后对李说过:高中有那么多认识的人,
那么多朋友,可到最后才知道--我们三个是最真的。平平淡淡,真真实实。
聚会时一定要吃好,那天我们确实吃得不少,是连最后的汤也喝得不少吧。
那天我们成了兄弟,没有一丝的刻意,记不清那天的具体日期,具体地点了。

three

后续
记得他们三个曾经唯一一次共同坐班车,从摩尼到到叙永,也就是从王的家里出发的吧。具体的时间已不清楚,大约是高三毕业那段时间,只记得坐在车里的时候外面的光线很好,照得车内很亮…

面向期望(Oriented expectations)

走过或者正在走在OOP思想中,我们一直坚信的JAVA实现.

面向期望, 我们不再想什么做什么;想如何做好就如何做;想给客户解释为什么这样做,而不是按照客户想要的去做;不再把技术的难度欺压在用户的期望上;而是: 用户所期望的就是我们想要的; 用户如何使用好使我们就如何去做; 只做他所需,不做己所求.

站在用户的角度,实际地去想你就是一个普通的用户,我就是这应用中的一个角色,当我打开页面时,我期望的页面是什么样的,有哪些内容是我所关心的,我如何操作最方便,最能达到我所想要完成的事情或操作;不再是我想它应该是这样的, 而应该是: 我就是用户, 我就期望它是这样的,不是那样的. 让操作舒服,让用户喜欢,让流程清晰,让目的明确,让他们所认可, 这就是目的.

我们站在技术角度的思想,完全不是一个用户所想的,转变角色,我们这里不谈实现,不谈if-else,不谈代码风格. 要做的,只是闭上双眼,想像你就是用户,打开浏览器(或其他UI界面),想我想的页面应该是什么样的,我所期望的注册是什么样的,信息浏览是什么样的,要登录是什么样的,当需要帮助时是如何提示的; 甚至就去听听那些完全不懂技术的朋友,用户或者一个街边陌生人所想要的(面对从任意1000人中抓出来也不足一两个懂技术的人群,那998或999人的意见是更重要的,也更值得聆听的).

陌生人

清晨,醒来,没有蚊子咬,很舒服。打开电话联络世界,睁开眼睛,
看着熟悉 的环境。躺在床上,动来动去,电扇在转,可我们一点风
都感觉不到,可电扇 依旧转,它得转是在给我们以精神上的凉爽,
而我们能享受的是听和看它的形 态,除此,啥也没。

这个世界的通病之一是不管走到那儿都有很多很多的人,很多很多的陌生人,
所谓陌生人,就是一群莫(陌)名其妙地增加的人。只身来到一个地方,
都是 人群,不一样的面孔,同一样的肤色,异样的表情,各类的心情,
无一熟悉的 面孔,唯一熟悉的是我的眼睛看见的我自己的那部分。
没有亲人,朋友,所以 陌生人到处生存。