Sha*_*kul 7 jwt asp.net-web-api azure-ad-graph-api
更新
我已经能够使用此线程的指令获得Bearer令牌
以下是邮递员的说明:
但是,如果我在调用Web API端点时发送相同的令牌,我仍然会回复" 此请求已拒绝授权 "
为什么还没有授权?
结束更新
我创建了一个ASP.Net Web API项目,该项目使用组织Azure AD实例进行保护.我已正确设置了租户ID,客户端ID和密码.
Azure AD实例与支持Office 365/SharePoint实例的实例相同,其目的是创建可以使用登录用户的上下文调用服务的SharePoint加载项.
我坚持测试API.我可以毫无问题地调用未经授权的端点.但是,当我添加[Authorize]属性时,我总是回复此响应:" 此请求已拒绝授权. "
据我了解,我需要生成一个不记名令牌并将其添加到标题中的Postman请求中(参见图片).经过大量的谷歌搜索,我仍然无法完成这项工作.
我的问题是:如何为受Azure AD保护的Web API实例生成承载令牌.
我的配置代码如下:
public void ConfigureAuth(IAppBuilder app)
{
app.UseWindowsAzureActiveDirectoryBearerAuthentication(
new WindowsAzureActiveDirectoryBearerAuthenticationOptions
{
Tenant = ConfigurationManager.AppSettings["ida:Tenant"],
TokenValidationParameters = new TokenValidationParameters {
ValidAudience = ConfigurationManager.AppSettings["ida:Audience"]
},
});
}
Run Code Online (Sandbox Code Playgroud)
小智 5
首先,您可以使用 POSTMAN 测试受 Bearer 令牌保护的 Web api。这是我的邮递员屏幕截图:
基本上:在请求标头中,将密钥指定为“Authorization”,并将值指定为“Bearer [您的令牌”。如果遇到错误,请查看响应的标题,您将看到更详细的错误信息。
请注意,大多数令牌都有有效期,您可以尝试验证您的令牌是否有效。例如https://jwt.io/
| 归档时间: |
|
| 查看次数: |
5438 次 |
| 最近记录: |