summaryrefslogtreecommitdiffstats
path: root/base/server/cms/src/com/netscape/cms/servlet/base
diff options
context:
space:
mode:
authorEndi S. Dewata <edewata@redhat.com>2014-07-07 19:47:29 -0400
committerEndi S. Dewata <edewata@redhat.com>2014-07-09 18:47:45 -0400
commit8f3c7807a2efc4d2699f36795cb9685bf4203c38 (patch)
tree2d6c29e25d5f3667bc6495c62b85c97a8443f3e8 /base/server/cms/src/com/netscape/cms/servlet/base
parentfdc9f763cbb9733cc671e23034bd719df4a14247 (diff)
downloadpki-8f3c7807a2efc4d2699f36795cb9685bf4203c38.tar.gz
pki-8f3c7807a2efc4d2699f36795cb9685bf4203c38.tar.xz
pki-8f3c7807a2efc4d2699f36795cb9685bf4203c38.zip
Added transport cert attributes.
The REST service has been modified to return additional attributes for transport certificate including serial number, issuer DN, subject DN, and resource link. Ticket #1065
Diffstat (limited to 'base/server/cms/src/com/netscape/cms/servlet/base')
-rw-r--r--base/server/cms/src/com/netscape/cms/servlet/base/PKIService.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/base/server/cms/src/com/netscape/cms/servlet/base/PKIService.java b/base/server/cms/src/com/netscape/cms/servlet/base/PKIService.java
index 9d274705b..b958791bb 100644
--- a/base/server/cms/src/com/netscape/cms/servlet/base/PKIService.java
+++ b/base/server/cms/src/com/netscape/cms/servlet/base/PKIService.java
@@ -19,6 +19,7 @@ package com.netscape.cms.servlet.base;
import java.lang.reflect.Method;
import java.net.URI;
+import java.security.Principal;
import java.security.cert.CertificateEncodingException;
import java.util.Arrays;
import java.util.HashMap;
@@ -39,6 +40,7 @@ import javax.ws.rs.core.Response.ResponseBuilder;
import com.netscape.certsrv.apps.CMS;
import com.netscape.certsrv.base.PKIException;
import com.netscape.certsrv.cert.CertData;
+import com.netscape.certsrv.dbs.certdb.CertId;
import com.netscape.certsrv.logging.IAuditor;
import com.netscape.certsrv.logging.ILogger;
@@ -168,9 +170,20 @@ public class PKIService {
public CertData createCertificateData(org.mozilla.jss.crypto.X509Certificate cert)
throws CertificateEncodingException {
+
CertData data = new CertData();
+
+ data.setSerialNumber(new CertId(cert.getSerialNumber()));
+
+ Principal issuerDN = cert.getIssuerDN();
+ if (issuerDN != null) data.setIssuerDN(issuerDN.toString());
+
+ Principal subjectDN = cert.getSubjectDN();
+ if (subjectDN != null) data.setSubjectDN(subjectDN.toString());
+
String b64 = CertData.HEADER + "\n" + CMS.BtoA(cert.getEncoded()) + CertData.FOOTER;
data.setEncoded(b64);
+
return data;
}