我目前正在使用AAD单一登录的ASP.net MVC和Web API项目。我目前面临的问题是我不知道如何配置WebAPI的授权。这是我目前尝试过的方法,但是不起作用。
public void ConfigureAuth(IAppBuilder app)
{
...
app.UseWindowsAzureActiveDirectoryBearerAuthentication(
new WindowsAzureActiveDirectoryBearerAuthenticationOptions
{
Tenant = "common",
TokenValidationParameters = new TokenValidationParameters
{
ValidAudience = audience,
ValidateIssuer = false
} });
...}
然后我通过邮递员令牌预定义的令牌请求获取访问令牌,并且有效。
当我调用WebAPI(标题:授权-> Bearer)时,我收到了以下异常:
} });
我必须准备令牌请求,API标头或配置吗?
BG, 汤姆
答案 0 :(得分:0)
以下是有关Building a multi-tenant web API secured by Azure AD的示例。您可以下载它,并按照其提供的步骤进行配置。
应用程序使用Active Directory身份验证库(ADAL)通过OAuth 2.0协议获取JWT访问令牌。访问令牌将发送到Web API以对用户进行身份验证。 Web API项目演示了如何构造服务以供来自多个Azure AD租户的用户访问。
要登录多个租户,需要进入已注册的应用程序,然后单击Manifest
选项集availableToOtherTenants
到true
。
有关更多详细信息,您可以参考此article。