假设我有一个网络API,本地应用程序需要向其发送请求。这个API需要通过本地应用程序验证发出请求的用户身份。OpenID Connect似乎是正确的选择,因为它与OAuth不同,它关于认证而不是授权。
本地应用程序将用户凭据发送到IDP,并收到访问令牌(用于授权)和id令牌(用于认证)。就我对OIDC的理解,在API只会发送访问令牌,但id令牌仅适用于本机客户端应用程序。我觉得这没有道理,因为API关心的是用户的身份,而不是本地应用程序。
那么为什么id令牌不会传递给受保护的资源(即API)呢?如果不将id令牌传递到API,则如何确保访问令牌是安全的,并且可以用于验证用户身份?否则,使用OIDC而不是OAuth似乎就失去了优势。
本地应用程序将用户凭据发送到IDP,并收到访问令牌(用于授权)和id令牌(用于认证)。就我对OIDC的理解,在API只会发送访问令牌,但id令牌仅适用于本机客户端应用程序。我觉得这没有道理,因为API关心的是用户的身份,而不是本地应用程序。
那么为什么id令牌不会传递给受保护的资源(即API)呢?如果不将id令牌传递到API,则如何确保访问令牌是安全的,并且可以用于验证用户身份?否则,使用OIDC而不是OAuth似乎就失去了优势。