IDX10214:听众验证失败。观众:“ [PII隐藏]”

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

我有一个使用azureb2c进行身份验证的Web应用程序。有3个API,这些Web应用程序通过HttpClient的Ocelot网关调用了这3个API。认证后,当通过网关向API发出请求时,将向特定API发出请求,并提供所需的响应。但是,在读取响应时,在下面的行中引发了异常

var result = await response.Content.ReadAsStringAsync();

IDX10214:受众群体验证失败。受众群体:“ [PII隐藏]”。不匹配:validationParameters.ValidAudience:“ [PII隐藏]”或validationParameters.ValidAudiences:“ [PII隐藏]”。

我已经使用邮递员单独测试了API,并且可以正常工作。

我为每个客户端配置了类似于下面的代码

services.AddHttpClient<IApiClient, ApiClient>()
                .AddHttpMessageHandler<AccessTokenHandler>()
                .AddHttpMessageHandler<ValidateHeaderHandler>()
                .AddTransientHttpErrorPolicy(policyBuilder => policyBuilder.RetryAsync(2))
                .AddTransientHttpErrorPolicy(policyBuilder => policyBuilder.CircuitBreakerAsync
                 (
                    handledEventsAllowedBeforeBreaking: 2,
                    durationOfBreak: TimeSpan.FromMinutes(1)
                 ));
azure azure-active-directory asp.net-core-webapi asp.net-core-2.2 ocelot
1个回答
0
投票

您可以尝试:

if (env.IsDevelopment())
{
     IdentityModelEventSource.ShowPII = true; 
}

[另外,您可能要添加授权,因为默认情况下不包括此授权。

© www.soinside.com 2019 - 2024. All rights reserved.