OIDC的学习

OIDC的学习OIDC OpenIDConnec 下一代的身份认证授权协议 当前发布版本 1 0 OIDC 是基于 OAuth2 OpenID 整合的新的认证授权协议 OAuth2 是一个授权 authorizatio 的开放协议 在全世界得到广泛使用 但在实际使用中 OAuth2 只解决了授权问题 没有实现认证部分 往往需要添加额外的 API 来实现认证 而 OpenID 呢 是一个认证 authenticati

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

 

https://www.oschina.net/news/73532/oidc-oauth-2以上是网上查到的看法

我的看法是Oauth协议其实也包含了认证的那一部分,但是也仅限于一次,刚开始的登录就认证了一下,然后就获得了授权,之后也是以授权为基础去进行资源的访问。但是实际上,很多情况我们还需要一些信息–用户信息,比如说单点登录情境下,这个服务器认证授权,别的服务器想要获得资源难道在进行一次认证么?所以oidc诞生了,在Oauth基础上进一步扩展,细节点说又加了一个token,这个可能会用到JWT来生成这个token就能够把一些用户信息放到token中,这样这个token不管给谁,只要认证过,就能提供想要的信息。目前是这么理解的,不知道对不对。。。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/177254.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午7:57
下一篇 2026年3月26日 下午7:57


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号