要区分Azure Logic应用中的访问令牌和ID令牌,您需要了解它们的目的和用法:
1。目的和用法:
- 访问令牌:这些用于授权,允许访问特定的资源或API。它们包含权限和范围,以定义在这些资源上可以执行哪些操作。访问令牌通常是短暂的,可以使用刷新令牌进行刷新[1] [2] [3]。
-ID令牌:这些用于身份验证,提供有关用户身份的信息。它们包含诸如用户名,电子邮件和其他识别详细信息之类的索赔。 ID令牌通常在客户端应用程序中用于验证用户身份,并且不打算发送到API以进行资源访问[1] [2] [5]。
2。验证和消费:
- 访问令牌:这些由API验证,以确保承载者拥有访问资源的必要权限。它们是在API之间发送的,以促进数据访问[1] [2]。
-ID令牌:这些由客户端应用程序验证以确认用户身份。它们不会发送到API以进行资源访问,而是在客户端应用程序本身中使用[1] [5]。
3。发行和刷新:
- 访问令牌:由授权服务器发行,可以使用刷新令牌刷新它们以扩展访问而无需用户交互[1] [2]。
-ID令牌:也由授权服务器发行,ID令牌不能直接刷新,但是当刷新访问令牌时可以重新获得[3]。
在Azure Logic应用中,与Azure AD B2C或其他身份验证系统集成时,通常会使用访问令牌来验证API调用和ID令牌来管理应用程序逻辑中的用户会话[4] [6]。
为了在逻辑应用程序中处理这些令牌,您通常会从HTTP标头或有效载荷中提取并验证它们,以确保将访问令牌用于API调用,并且ID代币用于您的应用程序逻辑中的用户身份验证[6]。
引用:
[1] https://www.descope.com/blog/post/id-token-vs-access-token
[2] https://learn.microsoft.com/en-us/azure/active-directory-b2c/tokens-overview
[3] https://www.youtube.com/watch?v=0k9zj-zqrwm
[4] https://learn.microsoft.com/en-us/azure/logic-apps/authenticate-with-managed-indistity
[5] https://oauth.net/id-tokens-vs-access-tokens/
[6] https://docs.azure.cn/en-us/logic-apps/logic-apps-custom-api-authentication
[7] https://auth0.com/blog/id-token-access-token-what-is-the-difference/
[8] https://community.auth0.com/t/id-token-and-access-token-what-what-is-the-difference/70028