无法验证AzureAD本机客户端应用程序

问题描述 投票:1回答:1

我已经注册了AzureAD应用程序,它是公共客户端/本机客户端。

我正在使用门户网站中Azure生成的标准代码。

重要的部分正在

    static App()
    {
        _clientApp = PublicClientApplicationBuilder.Create(ClientId)
            .WithLogging((level, message, containsPii) =>
            {
                System.Diagnostics.Debug.WriteLine("*************************");
                System.Diagnostics.Debug.WriteLine($"{level}: {message}");
            }, LogLevel.Verbose, true, true)
            .WithAuthority($"{Instance}{Tenant}")
            .WithRedirectUri(RedirectURI)
            .Build();
        TokenCacheHelper.EnableSerialization(_clientApp.UserTokenCache);
    }

         authResult = await app.AcquireTokenInteractive(scopes)
                    .WithAccount(accounts.FirstOrDefault())
                    .WithParentActivityOrWindow(new WindowInteropHelper(this).Handle) // optional, used to center the browser on the window
                    .WithPrompt(Prompt.SelectAccount)
                    .ExecuteAsync();

返回的错误是;

“ AADSTS7000218:请求正文必须包含以下参数: 'client_assertion'或'client_secret'。

在AzureAD的I for example read here and in most places之后,我将默认类型更改为公共客户端。

我仍然遇到相同的错误。

我已启用日志记录,并且我认为下面有相关部分

信息:(假)MSAL 4.13.0.0 MSAL.Desktop Microsoft Windows NT 6.2.9200.0(UnknownClient:0.0.0.0)从/ authorize端点检索了授权代码。 信息:(False)MSAL 4.13.0.0 MSAL.Desktop Microsoft Windows NT 6.2.9200.0(UnknownClient:0.0.0.0)交换令牌的身份验证代码 信息:(False)MSAL 4.13.0.0 MSAL.Desktop Microsoft Windows NT 6.2.9200.0(UnknownClient:0.0.0.0)=== InteractiveParameters数据=== 提供的LoginHint:False 用户提供:False UseEmbeddedWebView:未指定 要同意的ExtraScopes: 提示:select_account HasCustomWebUi:False

信息:(假)MSAL 4.13.0.0 MSAL.Desktop Microsoft Windows NT 6.2.9200.0(UnknownClient:0.0.0.0)响应状态代码不指示成功:401(未授权)。 警告:(错误)MSAL 4.13.0.0 MSAL.Desktop Microsoft Windows NT 6.2.9200.0(UnknownClient:0.0.0.0)请求重试失败。 信息:(False)MSAL 4.13.0.0 MSAL.Desktop Microsoft Windows NT 6.2.9200.0(UnknownClient:0.0.0.0)HttpStatusCode:401:未经授权 错误:(正确)MSAL 4.13.0.0 MSAL.Desktop Microsoft Windows NT 6.2.9200.0(UnknownClient:0.0.0.0)MSAL.Desktop.4.13.0.0.MsalServiceException: 错误代码:invalid_client Microsoft.Identity.Client.MsalServiceException:配置问题阻止身份验证-检查服务器上的错误消息以获取详细信息。您可以在应用程序注册门户中修改配置。有关详情,请参见https://aka.ms/msal-net-invalid-client。原始异常:AADSTS7000218:请求正文必须包含以下参数:“ client_assertion”或“ client_secret”。

看来我正在获取授权码,但未获得令牌。错误为401(未经授权)。

有人可以帮我理解这一点吗?

azure-active-directory msal
1个回答
0
投票

有两个步骤可解决此问题。

1。将默认客户端类型更改为公共客户端。

2。添加移动和桌面应用程序平台

enter image description here

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.