【问题标题】:Azure AD 401 error - Authenticating from angular clientAzure AD 401 错误 - 从 Angular 客户端进行身份验证
【发布时间】:2016-05-03 22:26:56
【问题描述】:

我有一个单独的 Angular 客户端,我想使用 Azure AD 对其进行身份验证。我正在使用ADAL JS,所有这些似乎都运行良好。我被重定向到 AD 登录页面,然后被发送回我的应用程序。我可以看到令牌随着每个后续的 http 请求而传递。

但是,当我尝试向我的 Web API 发出安全请求时,我收到 401 Unauthorized 错误。我大致按照指南here 进行设置。我松散地说,因为我没有使用 MVC,我的客户端完全在一个单独的代码库中。

我确信我的用户可以访问此应用程序。

我的身份验证配置内容如下:

app.UseWindowsAzureActiveDirectoryBearerAuthentication(new WindowsAzureActiveDirectoryBearerAuthenticationOptions()
{
    TokenValidationParameters = new TokenValidationParameters()
    {
        ValidAudience = ConfigurationManager.AppSettings["AzureADAudience"],
    },
    Tenant = ConfigurationManager.AppSettings["AzureADTenant"],
    AuthenticationType = "OAuth2Bearer"
});

观众:https://login.windows.net/xyz.onmicrosoft.com/myappname

租户:xyz.onmicrosoft.com

我锁定的控制器是这样装饰的:

[HostAuthentication("OAuth2Bearer")]
[Authorize]
[RoutePrefix("Auth")]

【问题讨论】:

    标签: c# .net angularjs azure azure-active-directory


    【解决方案1】:

    您的 SPA 是否由您的后端托管?如果是这样,那么您需要将您的受众更改为客户 ID。

    ValidAudience = ConfigurationManager.AppSettings["ida:ClientID"]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-10-13
      • 1970-01-01
      • 1970-01-01
      • 2019-03-13
      • 2020-01-14
      • 1970-01-01
      • 1970-01-01
      • 2019-03-13
      相关资源
      最近更新 更多