【发布时间】:2020-10-16 10:29:30
【问题描述】:
我以前见过通用访问卡 (CAC) 被读入程序,但我现在正在修改 ASP.NET MVC 应用程序以使用 CAC 身份验证登录应用程序,这是我以前没有做过的。对于这个问题似乎没有直接的解释,至少对于像我这样开始的人来说没有。我的目标是让应用程序在打开时请求客户端证书。目前我有代码在 App_Start 目录的 Startup 类中请求证书:
HttpClientCertificate cert = Request.ClientCertificate;
cacid = Request.ClientCertificate["SubjectCN"].ToString();
当应用程序运行时,我得到一个空证书,并且 cacid(字符串)作为一个空字符串返回。我有一个 cac 阅读器,它可以正确显示在我的托管设备和一张要使用的卡中。我对此很陌生,以至于我什至不知道要问什么问题,但我会试一试:
我的网站是否需要在 IIS 管理器中设置?我启用了匿名身份验证
我是否需要 ActivClient 或 Active Directory 来实施或测试它? 有什么我没有考虑到我需要测试它是否正常工作?
【问题讨论】:
-
“目前我有代码可以在 App_Start 目录的 Startup 类中请求证书”听起来不正确。当实际有请求到来时,您只能在 MVC 控制器中访问
.Request。同样在 IIS 上,您需要请求客户端证书,docs.microsoft.com/en-us/iis/configuration/system.webserver/…
标签: c# ssl iis client-certificates cac