IdentityServer3无法从中获取文档

时间:2017-04-12 08:03:49

标签: identityserver3

我正在使用IdentityServer3版本(2.5.4)进行当前项目,一切正常在本地计算机上运行(使用IIS和IIS Express)。

客户安装了.NET 4.5的Windows7嵌入式计算机(没有SP1!),我们创建了一个自签名SSL证书(使用当前主机名,而不是localhost),但它无法正常工作。我总是收到错误“无法从https://xyz/.well-known/openid-configuration获取文档”

配置有什么问题?

2 个答案:

答案 0 :(得分:1)

我找到了解决方案,它与配置无关。 Windows 7 SP1的安装已修复它。

答案 1 :(得分:0)

在我们遇到此问题的几个案例中,主要与网络连接有关。

很少有事情可以帮助我们找出根本原因 -

从服务器上的浏览器访问“https://xyz/.well-known/openid-configuration”路由。

如果您无法访问该网址,则表示该服务器无法连接到Idserver安装。这是一个网络级问题。

如果您能够从托管依赖应用程序的服务器访问该URL,但依赖的应用程序会抛出错误 - >这意味着,在服务器上配置了代理。浏览器自动使用代理,您必须在依赖方应用程序中设置代理,如下所示:startup.cs

  var request = WebRequest.Create(uri);
  var myProxy = new WebProxy {Address = new Uri("proxy uri")};
  request.Proxy = myProxy;           
  var response = request.GetResponse();

这将确保源自代码的所有http请求也将使用相同的代理。

如果上述方法没有帮助,请检查安装了Idserver的IIS是否允许使用TLS 1.0和1.1。出于安全目的,在某些服务器上禁用此功能。如果是这种情况,请使用以下代码使您的应用程序使用tls 1.2并且调用将成功

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;