我按照此示例https://github.com/Azure-Samples/active-directory-dotnet-native-headless使用用户凭据(uname,pwd)对Azure AD进行身份验证,以获取承载访问令牌 . 此令牌将在Authorization标头中发送到Rest API . REST API使用令牌使用ClaimPrincipal授权用户 .
现在,在我的Rest API中,我想验证用户是否属于特定的安全组 . 为此,我需要使用Graph API . 但问题是,每次我将相同的承载令牌传递给我的图谱API,REST API从客户端收到它,它会抛出“访问令牌格式错误”错误 .
在其中一个示例(https://github.com/Azure-Samples/active-directory-dotnet-webapi-onbehalfof/blob/master/TodoListService/Controllers/TodoListController.cs)中,我发现我们需要重新生成一个新的Bearer Token来调用Graph API,那么我是否需要重新生成一个新的Token来调用Graph API?我不能使用客户端发送到我的REST API的相同承载令牌来调用Graph API吗?
1 回答
代币就像银行支票 . 为您写的支票只能由您兑现 . 如果要从Web API调用图表,可以使用您收到的令牌作为获取专门用于图表的新令牌的起点 . 有关此案例中使用的模式,请参阅https://azure.microsoft.com/en-us/documentation/samples/active-directory-dotnet-webapi-onbehalfof/,您只需要使用图表替换自定义API .