ASP.NETCore中允许客户端证书但不要求的问题。
创始人
2024-09-18 17:00:30
0

在ASP.NET Core中允许客户端证书但不要求可以通过以下代码实现:

  1. 在Startup.cs文件的ConfigureServices方法中添加以下代码:
services.AddMvc()
    .AddMvcOptions(options =>
    {
        options.Filters.Add(new RequireClientCertificateAttribute());
    });
  1. 在RequireClientCertificateAttribute.cs文件中添加以下代码:
using Microsoft.AspNetCore.Mvc.Filters;
using Microsoft.Extensions.Primitives;

public class RequireClientCertificateAttribute : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext context)
    {
        if (context.HttpContext.Request.Headers.TryGetValue("X-SSL-Client-Certificate", out StringValues certificate))
        {
            context.HttpContext.Connection.ClientCertificate = new System.Security.Cryptography.X509Certificates.X509Certificate2(
                Convert.FromBase64String(certificate.ToString()));
        }

        base.OnActionExecuting(context);
    }
}
  1. 在IIS中配置SSL绑定时勾选“Require SSL”和“Client certificates”。

注意:为了测试方便可以使用以下代码获取证书摘要。

var x509Cert = context.HttpContext.Connection.ClientCertificate;
var certThumbprint = x509Cert.Thumbprint;

相关内容

热门资讯

固有有辅助"中至吉安... 固有有辅助"中至吉安黑科技"开挂(透视)辅助安装(玩家教程有挂辅助) 【无需打开直接搜索加薇1367...
阶段开挂"人海大厅脚... 阶段开挂"人海大厅脚本"开挂(软件)辅助软件(有挂分享);无需打开直接搜索加薇136704302(咨...
透视实锤!闲逸碰胡辅助软件下载... 大家好,今天小编来为大家解答微乐自建房脚本免费下载苹果版这个问题咨询软件客服可以免费测试直接加微信(...
本来有开挂"小闲川南... 本来有开挂"小闲川南辅助工具"详细开挂辅助平台有挂实锤(微扑克教程) 了解更多开挂安装加(13670...
固有有开挂"丽水双扣... 丽水双扣茶苑脚本是一款专注玩家量身打造的游戏记牌类型软件,在丽水双扣茶苑脚本这款游戏中我们可以记录下...
方式开挂"微乐小程序... 【亲,微乐小程序透视工具 这款游戏可以开挂的,确实是有挂的,很多玩家在这款微乐小程序透视工具中打牌都...
透视安装!福建兄弟十三冰修改器... 透视安装!福建兄弟十三冰修改器,微信微乐辅助ios(透视)开挂辅助工具揭秘教程;无需打开直接搜索加薇...
往昔有辅助"新九五有... 往昔有辅助"新九五有没有脚本"开挂(透视)辅助脚本(玩家教你有挂头条);无需打开直接搜索打开薇:13...
本来有开挂"连连看辅... 本来有开挂"连连看辅助器"详细开挂辅助软件证实有挂(玩家教你) 【无需打开直接搜索加薇1367043...
指引辅助"新全游辅助... 新全游辅助是一款专注玩家量身打造的游戏记牌类型软件,在新全游辅助这款游戏中我们可以记录下每张牌的数量...