InvalidOperationException: IDX20803: 无法从 '[PII is hidden]' 获取配置。

87

我已经将我的API和客户端应用程序部署在Docker上,但是网站应用程序无法调用API,我一直收到异常。

我添加了其他帖子中建议的以下行,但并没有起作用。

IdentityModelEventSource.ShowPII = true;

异常:

System.InvalidOperationException: IDX20803: Unable to obtain configuration from: '[PII is hidden]'.
at Microsoft.IdentityModel.Protocols.ConfigurationManager`1.GetConfigurationAsync(CancellationToken cancel)
at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()
at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.AuthenticateAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)
at IdentityServer4.AccessTokenValidation.IdentityServerAuthenticationHandler.HandleAuthenticateAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.AuthenticateAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Cors.Infrastructure.CorsMiddleware.InvokeCore(HttpContext context)
at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)

3
很可能您的权限配置不正确或无法连接到元数据终点。 - juunas
2
你在哪里添加了ShowPII=true这一行? - user4864425
2
@RuardvanElburg,问题在于我的Web UI应用程序无法调用API,因为API抛出了错误[PII已隐藏],所以我添加了ShowPII=true,但错误仍然存在。 - Jane Senya
1
@RuardvanElburg 在 IDS 项目中添加了“ShowPII”后,它起作用了,我可以在日志中看到实际的错误,显然 API 无法访问配置文档。我能够从那里解决问题。感谢您的帮助。 - Jane Senya
我遇到了同样的错误。关键是,如果你先调用 app.MapControllers(); 然后再调用 app.UseSwagger(); 你会得到这个与PII无关的奇怪错误。所以,解决办法是交换顺序。祝你好运。 - undefined
显示剩余6条评论
21个回答

0

我发现这个错误是由于我的 hosts 文件损坏造成的(Docker Desktop 添加了一个部分,但破坏了文件的原始内容)。这意味着我的 Identity Server 实例实际上没有运行。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接