【发布时间】:2015-12-05 02:28:06
【问题描述】:
我正在关注下面的 GitHub 示例,用于跨 WebApp 和 WebApi 实现身份验证机制。
https://github.com/AzureADSamples/WebApp-WebAPI-OpenIDConnect-DotNet
我正在为 WebApp 和 WebApi 使用单个应用注册,获取“https://abc.onmicrosoft.com/App”的访问令牌并将其传递给 WebApi。我将令牌附加到名为“Bearer”的 HTTPS 标头。我在 WebApi Owin Startup 类中有以下内容来验证受众和租户的令牌,但实际上并未按预期验证这些令牌。
几个问题: 1. 什么触发以下处理程序为租户和观众验证令牌?它是 Controller 类的 [Authorize] 属性吗? 2. 如何在哪里找到执行处理程序的令牌? 3. 将 SaveSigninToken 设置为 true 会保存令牌。如何检索令牌并从此令牌获取 Graph API 的访问令牌?
app.UseWindowsAzureActiveDirectoryBearerAuthentication(
new WindowsAzureActiveDirectoryBearerAuthenticationOptions
{
Tenant = "abc.onmicrosoft.com",
TokenValidationParameters = new TokenValidationParameters
{
ValidAudience = "https://abc.onmicrosoft.com/App",
SaveSigninToken = true,
}
});
请指教。提前致谢!
【问题讨论】:
标签: c# authentication asp.net-web-api