如何使动态生成的不记名令牌起作用
how to make bearer token generated dynamically to work
当我尝试在其他人的日历中创建事件时,当我从 https://developer.microsoft.com/en-us/graph/graph-explorer 复制不记名令牌并将其放置在邮递员中时,我没有问题,但我想使其动态化,因为不记名令牌已过期。我尝试动态生成不记名令牌并使用它,但我遇到了以下错误。
{
"error": {
"code": "BadRequest",
"message": "/me request is only valid with delegated authentication flow.",
"innerError": {
"date": "2021-08-26T17:23:39",
"request-id": "aeeb1036-b9aa-4f6a-9265-936c94120e66",
"client-request-id": "aeeb1036-b9aa-4f6a-9265-936c94120e66"
}
}
}
您收到此错误的原因是图形浏览器使用委托权限模型,这意味着它在用户的上下文中运行,您可以在那里利用 /me 端点。
但是当使用 Oauth 2.0 客户端凭证流时,令牌将具有应用程序声明(在应用程序的上下文中意味着 运行)。因此你不能使用 /me 端点。 (尝试 /user 而不是 /me)
客户端-------JWT令牌---应用程序
您可以尝试使用 Oauth 2.0 授权代码流程 获取令牌,它应该可以解决您的问题。
客户端---JWT令牌--用户---应用程序
按照提到的步骤 here 来利用此流程。
{
"error": {
"code": "BadRequest",
"message": "/me request is only valid with delegated authentication flow.",
"innerError": {
"date": "2021-08-26T17:23:39",
"request-id": "aeeb1036-b9aa-4f6a-9265-936c94120e66",
"client-request-id": "aeeb1036-b9aa-4f6a-9265-936c94120e66"
}
}
}
您收到此错误的原因是图形浏览器使用委托权限模型,这意味着它在用户的上下文中运行,您可以在那里利用 /me 端点。
但是当使用 Oauth 2.0 客户端凭证流时,令牌将具有应用程序声明(在应用程序的上下文中意味着 运行)。因此你不能使用 /me 端点。 (尝试 /user 而不是 /me)
客户端-------JWT令牌---应用程序
您可以尝试使用 Oauth 2.0 授权代码流程 获取令牌,它应该可以解决您的问题。
客户端---JWT令牌--用户---应用程序
按照提到的步骤 here 来利用此流程。