尽管我以前使用过OAuth 2,但我还是Open ID Connect的新手。
在阅读教程和文档时,我遇到了 access_token 和 id_token ,其中 access_token是根据OAuth 2 和 id_token生成的随机唯一字符串,是JSON Web token ,其中包含用户信息,例如,发行人和其他各种可用于验证它的信息。我也见过API提供程序,它们同时提供access_token和id_token,据我所知是为了向后兼容。
我的问题是是否可以同时使用access_token和id_token来访问 protected 资源?还是id_token仅用于验证目的,而access_token用于获取对 protected 资源的访问权?
最佳答案
最初,OAuth和OpenId被设计用于不同的目的:OpenId用于身份验证,OAuth用于授权。 OpenId Connect是两者的统一,并且为两者服务,但不会更改其原始功能。记住这一点,您应该能够发现自己。 ;-)
id_token用于标识已验证的用户,例如用于SSO。必须使用access_token来证明对 protected 资源的访问权限,例如OpenId Connect中的userinfo端点。
关于api - OAuth 2 access_token与OpenId Connect id_token,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19293793/