我发现这个答案,它介绍了如何使用Web.Config在特定的MVC控制器中要求IIS需要SSL客户端证书,但我不知道如何使其对任何其他控制器也起作用。
此需求的目的是客户端证书仅用于登录以访问应用程序的安全部分。未登录的用户不应该被要求提供证书。
示例:要求Auth控制器使用SSL证书
如果用户直接访问domain.com/Auth,则会按预期提示用户提供证书。然而,如果用户访问domain.com/Home,然后单击“登录”按钮(将他们发送到Auth控制器),则会收到HTTP 403.7的响应,表示该站点需要客户端证书。