我正在尝试使用 IdentityServer4 中的智能卡证书对用户进行身份验证。
当我按照提供的示例进行操作时,首先,我无法在 IE 或 Chrome 的证书弹出窗口中获取我的测试证书。我的 iPhone 弹出一个 Apple 设备证书,另一个弹出一个,这可能是我的测试证书配置错误。
但是当我选择任何证书时,它会将我带到 ID4 中的登录屏幕。
我的问题是,我必须实现哪些接口,以便用户可以使用 CAC、PIV、SmartCard 或 X.509 证书进行身份验证,并在证书有效时取回令牌?
我已经研究过客户端证书身份验证所需的设置
var host = new WebHostBuilder()
.UseKestrel(cfg =>
{
var httpsoptions = new HttpsConnectionFilterOptions
{
ServerCertificate = cert,
ClientCertificateMode = ClientCertificateMode.AllowCertificate,
CheckCertificateRevocation = false,
SslProtocols = System.Security.Authentication.SslProtocols.Default,
ClientCertificateValidation = ClientCertificateValidation
};
cfg.UseHttps(httpsoptions);
})
如果您使用 IdentityServer4 实现了类似的要求,任何人都可以帮忙吗?