Name
global.MapClientCertificateUtil
Description
No description available
Script
var MapClientCertificateUtil = Class.create();
MapClientCertificateUtil.prototype = Object.extendsObject(AbstractAjaxProcessor, {
getSubjectName: function() {
var X509Certificate = Packages.javax.security.cert.X509Certificate;
var StringUtil = GlideStringUtil;
var certDescription = "";
var certEncoded = this.getCert();
var certDecoded = decodeURIComponent(certEncoded);
var str = certDecoded.toString();
str = str.substring(str.indexOf('-----BEGIN CERTIFICATE-----') + 28, str.indexOf('-----END CERTIFICATE-----') - 1).trim();
var bytes = StringUtil.base64DecodeAsBytes(str);
var x509Cert = X509Certificate.getInstance(bytes);
var subject = x509Cert.getSubjectDN().getName();
var result = this.newItem("result");
result.setAttribute("certDescription", subject);
},
validateResponse: function() {
var success = SNC.AuthenticationHelper.associateUserCertificate(this.getCert());
var result = this.newItem("result");
result.setAttribute("success", success);
},
getCertHeader: function() {
var cert = this.getCert();
var certDecoded = decodeURIComponent(cert);
var result = this.newItem("result");
result.setAttribute("cert", certDecoded);
},
getCert: function() {
var request = GlideTransaction.get().getRequest();
var certHeader = request.getHeader("X-Client-Cert");
return certHeader;
},
type: 'MapClientCertificateUtil'
});
Sys ID
cf497a32c3431010559d74c3e540dd68