首页 > 解决方案 > Asp 核心不强制执行客户端证书

问题描述

我有一个使用 asp 核心创建的 API 应用程序。我正在尝试强制使用此处描述的客户端证书。

我确实告诉 Kestrel 在 Program.cs 中要求证书:

webBuilder.ConfigureKestrel(o =>
{
    o.ConfigureHttpsDefaults(o => o.ClientCertificateMode = ClientCertificateMode.RequireCertificate);
});

我确实在 Startup.cs 中添加了事件处理程序:

services.AddAuthentication(CertificateAuthenticationDefaults.AuthenticationScheme)
.AddCertificate(options =>
{
    options.Events = new CertificateAuthenticationEvents
    {
        OnCertificateValidated = context =>
        {
        }
    };
});

当我调试在本地运行的 API 时,它仍然不需要任何证书。如果我仍然提供证书,则永远不会命中事件处理程序中的断点。

标签: asp.netasp.net-corecertificateclient-certificateskestrel-http-server

解决方案


推荐阅读