PSU*_*rdi 4 c# visual-studio iis-express owin visual-studio-2019
我目前正在使用 Visual Studio Professional 2019,并且有以下用例。
我正在尝试使用 X509 进行用户身份验证。我提示输入证书并通过 IOwinRequest.Environment 查找它并查找属性 ssl.ClientCertificate
在我的初创公司中我正在使用这样的东西
app.UseClientCertificateAuthentication(new DefaultClientCertificateValidator());
Run Code Online (Sandbox Code Playgroud)
这反过来最终会达到
ClientCertificateValidationResult validationResult = await Task<ClientCertificateValidationResult>.Run(() => ValidateCertificate(Request.Environment));
if (validationResult.CertificateValid)
{
// Do some stuff
}
Run Code Online (Sandbox Code Playgroud)
private ClientCertificateValidationResult ValidateCertificate(IDictionary<string, object> owinEnvironment)
{
if (owinEnvironment.ContainsKey(_owinClientCertKey))
{
X509Certificate2 clientCert = Context.Get<X509Certificate2>(_owinClientCertKey);
return _clientCertificateValidator.Validate(clientCert);
}
Run Code Online (Sandbox Code Playgroud)
如果我将其投入生产并使用一些日志语句,我可以看到事情按正确的顺序发生并实际验证(这很好)。但是,我想在调试中实际运行此操作,以便我可以测试其他一些项目。
在 Visual Studio 中运行时,它通过 IIS Express 运行。在我的项目属性中,我启用了 SSL,并且可以在 https://localhost:44300/ 上访问该 url,但是,它从不提示输入用户证书。
如果这个应用程序在产品中,我只需进入 IIS,进入 SSL 连接部分并要求用户传递证书。有没有办法在 Visual Studio 的 IIS Express 中执行此操作?
我想 Web.Config 或 AppHost 文件中可能会有一些东西
C:\directory.vs\solution_name\config\applicationhost.config
但我可能错过了一些愚蠢的事情。
任何帮助都会很棒!
| 归档时间: |
|
| 查看次数: |
1308 次 |
| 最近记录: |