ASP.NET Smart Card Authentication

We currently have a website hosted in the cloud. Let's discuss that site https://abc.site.com .

We have an SSL wildcard certificate (*.site.com) , which is used to protect the site.

We were asked to implement the implementation of the CAC Card / Smart Card. Is there a way to read a user / client smart card certificate when a button is clicked?

We can read the map in our development environment, but only when we use a client certificate to actually protect the site (which we don’t want to implement).

I did a lot of research on this issue, but I could not find a solution to our problem. From what I read, an ActiveX is the only way to read a client certificate store with a smart card certificate, but ActiveX is not an option for us.

Any help would be greatly appreciated!

+4
source share
2 answers

This is done at the web server level, requiring a client-side certificate. The user browser will prompt the user to provide a smart card (or other certificate). You can verify that they provided a valid smart card certificate by checking the roots of CA certificates.

There is a (old) tutorial for ASP.NET here: http://support.microsoft.com/kb/315588

Other than that, there is no universal way to obtain a client certificate without using Java applets or ActiveX controls, as you saw.

+2
source

First you need to configure IIS to use client certificates for authentication. You also need to have the entire certificate chain in WebServer.

And on the ASP.NET page, you can use Request.ClientCertificate to access the certificate information that you will use for authentication on your system.

0
source

All Articles