我正在尝试向Blazor服务器和客户端添加Azure Active Directory身份验证。我在Azure
中创建了一个新的App Registration
并将 Tenant ID 和 Client ID 复制到我的 * appconfig.json * 中,
{
"AzureAd": {
"Instance": "https://login.microsoftonline.com/",
"Domain": "mycompany.com",
"TenantId": "xxx",
"ClientId": "xxx",
"CallbackPath": "/authentication/login-callback"
},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*"
}
我还设置了 * 平台配置 *
现在,我运行服务器应用程序,可以对我的用户进行身份验证。身份验证后,我得到这个错误
我的组织b4e49ba2-xxx
与错误中提到的组织完全无关。我创建了一个新的App Registration
几次,结果都是一样的。
这是应用程序权限屏幕
1条答案
按热度按时间30byixjq1#
如果您尚未创建API应用程序并尝试访问该API,则通常会发生此错误。
**若要解决此错误,**请创建Sever应用并公开如下所示的API:
在客户端应用程序中,添加如下所示的API权限:
确保更新
Program.cs
中的作用域:要解决错误“*”scope“或”scp“声明不包含作用域”API://xxx/ScopeName“或未找到 *.",请确保在ADTest.Serverappsettings.json中将scope更新为作用域名称**而不是
api://ServerappId/scopename
:我能够登录Blazor应用程序并成功获取数据: