// GET api/values public IEnumerable <string> Get() { ProcessClientCertificate pCert = new ProcessClientCertificate(); System.Net.Http.Headers.HttpRequestHeaders headers = this.Request.Headers; List <string> lst = new List <string>(); foreach (var header in headers) { if (headers.Contains(header.Key)) { string token = headers.GetValues(header.Key).First(); if (!string.IsNullOrEmpty(token)) { lst.Add(header.Key + " : " + token); } } else { lst.Add(header.Key + " : No value "); } } if (headers.Contains("X-ARR-ClientCert")) { string token = headers.GetValues("X-ARR-ClientCert").First(); X509Certificate2 cert = pCert.GetClientCertificateFromHeader(token); return(new string[] { cert.Thumbprint, cert.Issuer }); } return(lst.ToArray <string>()); //new string[] { "value1", "value2" }; }
public ActionResult Index() { ProcessClientCertificate pCert = new ProcessClientCertificate(); NameValueCollection headers = base.Request.Headers; var certHeader = headers["X-ARR-ClientCert"]; if (!String.IsNullOrEmpty(certHeader)) { ViewBag.Title = pCert.GetClientCertificateFromHeader(certHeader); } { ViewBag.Title = "Home Page"; } return(View()); }