如何通过身份服务器 4 获取客户端证书?

How to get client certificates through identity server 4?

我正在尝试通过ASP.NET MVC 构建身份验证系统。我正在使用 Identity Server 4 进行身份验证。我已经通过 ResourceOwner 实现了用户名和密码验证。
现在我正在尝试实现智能卡身份验证。当我尝试在调试模式下读取 X509Certificate2 时,我能够读取客户端证书,但是当我将应用程序部署到 IIS 时,我无法读取证书。
当请求从客户端 ASP.NET MVC 发送到 Identity Server 4 时,我想在 IIS 上托管的我的 Identity Server 上接受客户端证书。我的 Identity Server 4 项目类型是 .NET Framework 上的 .NET Core。

我已经试过了:

  1. 已在 IIS 上安装授权 SSL 证书
  2. 使用有效的端口号将 HTTPS 绑定添加到我的身份服务器 4 应用程序池。
  3. 为身份服务器站点启用 SSL 并设置为接受客户端证书。

我在 Identity Server 4 中获得了客户端证书,如下所示,但它没有私钥: var clientX509Certificate = new X509Certificate2(this.HttpContext.Connection.ClientCertificate);