public dynamic Wipe() { Console.WriteLine("GET /api/ca/wipe"); CAManager caManager = new CAManager(); try { Directory.Delete(CAStorePathInfo.CARootPath, true); return(new { status = "OK" }); } catch (Exception exception) { return(new { status = "FAIL", message = exception.Message }); } }
public dynamic GetAll() { Console.WriteLine("GET /api/leaf/getall"); CAManager caManager = new CAManager(); IEnumerable <CertificateEntry> certs = caManager.GetAllLeafCertificates(); if (certs == null || certs.Count() == 0) { return(null); } else { return(certs); } }
public void Create([FromBody] dynamic request) { Console.WriteLine("POST /api/ca/create"); CAManager caManager = new CAManager(); String name = request.fqdn; String organization = request.organization; String organizationalUnit = request.organizationalUnit; String city = request.city; String stateCode = request.stateCode; String countryCode = request.countryCode; String password = null; caManager.GenerateNewCACertificate(name, organization, organizationalUnit, city, stateCode, countryCode, password); }
public dynamic Get(String thumbprint) { Console.WriteLine($"GET /api/leaf/get/{thumbprint}"); CAManager caManager = new CAManager(); var cert = caManager.GetLeafCertificate(thumbprint); if (cert == null) { return new { status = "Certificate not present." } } ; else { return(new { status = "OK", x509certificate = cert, subjectDN = cert.Certificate.ExtractDNFields(), keySize = $"{cert.Certificate.GetRSAPublicKey().KeySize}-bit", certificatePem = cert.Certificate.ExportToPEM() }); } }