1

我正在使用 VS 2015 创建具有 Azure AD 身份验证的新 Web 应用程序(.NET 核心)。运行应用程序后,我看到 Azure AD 自动为我注册新应用程序。然后我可以使用我的 Azure 用户成功登录。

但我想手动注册我的应用程序。因此,我按照此站点上的说明进行操作: https ://docs.microsoft.com/en-us/azure/active-directory/active-directory-app-registration

然后我在 Azure AD 上手动注册我的新应用程序,然后将生成的客户端 ID 更新为我的 appsettings.json,然后使用 Azure 用户运行并登录。我收到错误消息:

An unhandled exception occurred while processing the request.

HttpRequestException: Response status code does not indicate success: 401 (Unauthorized).
MoveNext

AggregateException: Unhandled remote failure. (Response status code does not indicate success: 401 (Unauthorized).)
MoveNext

有专家能告诉我原因吗?我是 Azure 的新手。还有一个问题是我不知道为什么在我的 appsetting.json 文件中没有 SecretKey?

这是我创建应用程序时的屏幕

这是我的 appsetting.json 文件

4

2 回答 2

1

当您将appsettings.json更改为第二个应用程序时,此问题会导致应用程序的客户端密码不正确。

敏感数据存储在用户配置文件目录中的 JSON 配置文件中:

Windows:%APPDATA%\microsoft\UserSecrets\\secrets.json

Linux:~/.microsoft/usersecrets//secrets.json

Mac:~/.microsoft/usersecrets//secrets.json

在 secrets.json中更改ClientSecret后,应用程序应该运行良好。

有关在开发过程中安全存储应用程序机密的更多详细信息,您可以参考此处

于 2017-02-08T07:57:07.787 回答
0

您可能缺少一些委托权限(不是应用程序权限)。可能用于Graph Api

由于您使用您的 Azure 帐户登录,因此应用程序会代表您的用户执行对 Graph Api 的请求(这就是您必须设置委托权限的原因)。这也是您不需要 ClientSecret 的原因(如果您的应用程序使用服务主体对自身进行身份验证,您将需要它)。

于 2017-02-04T12:34:19.267 回答