|
From: Christian F. <hos...@ip...> - 2012-10-10 14:06:17
|
Hello,
while DemoCertReqServlet.java works with Firefox, I ran into problems
with Internet Explorer. Servlet creates a user and ejbca a certificate.
IE does not like answer from ejbca, I got an error
SCRIPT438: Object doesn't support this property or method.:
'g_objClassFactory.CreateObject'
opencertreq, Zeile 139 Zeichen 4
This is code IE got from ejbca:
<!-- Header -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1" />
<title><%=
org.ejbca.config.InternalConfiguration.getAppNameCapital() %> Public
Web</title>
<link rel="shortcut icon" href="images/favicon.png" type="image/png" />
<link rel="stylesheet" href="styles.css" type="text/css" />
<script type="text/javascript" src="scripts/functions.js"></script>
<script type="text/vbscript" src="scripts/functions.vbs"></script>
</head>
<body>
<div id="header">
<div id="banner">
<a href="index.jsp"><img src="images/logotype.png" alt="EJBCA" /></a>
</div>
</div>
<div class="menucontainer">
<div class="menu">
<ul>
<li><div class="menuheader">Enroll</div>
<ul>
<li>
<a href="enrol/browser.jsp">Create Browser Certificate</a>
</li>
<li>
<a href="enrol/server.jsp">Create Server Certificate</a>
</li>
<li>
<a href="enrol/keystore.jsp">Create Keystore</a>
</li>
</ul>
</li>
<li><div class="menuheader">Retrieve</div>
<ul>
<li>
<a href="retrieve/ca_certs.jsp">Fetch CA & OCSP
Certificates</a>
</li>
<li>
<a href="retrieve/ca_crls.jsp">Fetch CA CRLs</a>
</li>
<li>
<a href="retrieve/latest_cert.jsp">Fetch User's Latest
Certificate</a>
</li>
</ul>
</li>
<li><div class="menuheader">Miscellaneous</div>
<ul>
<li>
<a href="retrieve/list_certs.jsp">List User's
Certificates</a>
</li>
<li>
<a href="retrieve/check_status.jsp">Check Certificate
Status</a>
</li>
<li>
<a href="adminweb/index.jsp">Administration</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
<div class="main">
<div class="content">
<!-- Header -->
<object classid="clsid:127698e4-e730-4e5c-a2b1-21490a70c8a1"
CODEBASE="/CertControl/xenroll.cab#Version=5,131,3659,0"
id="g_objClassFactory"></object>
<!-- Updated w CertEnroll for Vista
Class ID: {884e2049-217d-11da-b2a4-000e7bbb2b09}
-->
<!-- New updated enrollment activeX-control 2002-09-02 (Q323172)
New Xenroll.dll information:
Class ID: {127698e4-e730-4e5c-a2b1-21490a70c8a1}
sXEnrollVersion="5,131,3659,0"
New Scrdenrl.dll information:
Class ID: {c2bbea20-1f2b-492f-8a06-b1c5ffeace3b}
sScrdEnrlVersion="5,131,3642,0"
-->
<!-- Old Xenroll.dll information:
Class ID: {43F8F289-7A20-11D0-8F06-00C04FC295E1}
Old Scrdenrl.dll information:
Class ID: {80CB7887-20DE-11D2-8D5C-00C04FC29D45}
-->
<script language="VBScript" type="text/vbscript">
cert =
"MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAaCA" & _
"JIAEBUVKQkNBAAAAAAAAoIAwggMlMIICDaADAgECAghCKLQdjWjN8TANBgkqhkiG" & _
"9w0BAQsFADARMQ8wDQYDVQQDDAZEZW1vQ0EwHhcNMTIxMDEwMTMzODE2WhcNMTQx" & _
"MDEwMTMzODE2WjATMREwDwYDVQQDDAh0ZXN0MDAwMTCCASIwDQYJKoZIhvcNAQEB" & _
"BQADggEPADCCAQoCggEBAM1sXTv9DQtuMmWDEi41hOr4ciAXWgJiz+zIbajcJWKn" & _
"cxWxAPoEuQO/qdPphJLWhnZUZBrGNBebSZt20npkrC/CZAOpH3fCn5UK+nRHn2is" & _
"ehOxaThD7c1tS52zALrFOubHXdraZcKYHmE7MtDWAWM6lgCfQw0RqcG3ncnk0nZ2" & _
"XJpq3Y/gXQ53ff+Cu5xg0lVWGIhf8H67wBY3nX8NnYry81ACkPLFt5UYNMZRAJHY" & _
"6RnOo2xvcXZ1f+8qVc4FsZLptGuOmgnTqBoJIbO0MF/jHG27j4UhnOomNQOB6RjL" & _
"q38lCNr66P1MXkTBiTpvt6B48fA09MrgeHvJlcrz060CAwEAAaN/MH0wHQYDVR0O" & _
"BBYEFN8h9p8GpEAuTbqY4n/uRqhn1OUEMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgw" & _
"FoAUzDTvpOBPQ8aLW2nt7s0MqDuKfT0wDgYDVR0PAQH/BAQDAgXgMB0GA1UdJQQW" & _
"MBQGCCsGAQUFBwMCBggrBgEFBQcDBDANBgkqhkiG9w0BAQsFAAOCAQEAgdqaP+b0" & _
"9RC8Nmw5VR0kmD3i1KukHUIehRf6oBbsYjWkIKU3HFDreZ9SqYIuVfKr+iyfKGR3" & _
"IMn59nYIq2pL+KY2MH72lsce50/4EifwnO84cxvVnWak2I4d9rXb+9jdA52hkYge" & _
"kXFzjELtEZUP+550nqX1upbil9Gon87ctHvouWvkdb7PlgirW/ZmXFCcHxYaF8VK" & _
"eVsrQj/KCGdCeG57mqIclpNpKOS2zkkB6dCaFg8IaxB6VCNK/wN2+rq1i9lWQkv/" & _
"BncJRNTfTcpxNdJxIMg4Xpe7gq7csz+HRw/7ng9f6f9AX/h6xlsCAxmPewhPp1sq" & _
"f0fPtoQkrRZRdjCCAwcwggHvoAMCAQICCFldFdeJGR3rMA0GCSqGSIb3DQEBCwUA" & _
"MBExDzANBgNVBAMMBkRlbW9DQTAeFw0xMjEwMDcxMjEzNDZaFw0zNzEwMDgxMjEz" & _
"NDZaMBExDzANBgNVBAMMBkRlbW9DQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC" & _
"AQoCggEBALbji9I2uyYPBcHcGYvtDghSzENJa4ncXpWO9r95u1FyOrQI28eNt7k3" & _
"f/lovQqD1GzUt2FxjEuziM+YTSWqVGeti3+1rtAnYtn7UXJT70wbhELgDjaED0rL" & _
"N3BiTircxBjpVk4RiLKXoj5feblqOULTdqRpHM/aco7cksXbqv9SN/cUFxjSQ9vj" & _
"YiY+dIEllVUquERUJE+pEs/R1mWJ2WGJHcuvhOeIKYG2nQaE0G6ATXYyvPPyn3r1" & _
"AERRTvw9ESNn6IiN9DtA+D8dpt3jYplNMy3CJ2QgkbahPU1hzakbJ3AfSfgUWOop" & _
"Rpbm5EWe4Whi3LDlw88z9uG3oTqhaXcCAwEAAaNjMGEwHQYDVR0OBBYEFMw076Tg" & _
"T0PGi1tp7e7NDKg7in09MA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUzDTv" & _
"pOBPQ8aLW2nt7s0MqDuKfT0wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBCwUA" & _
"A4IBAQC08FYY/4ypawrQRbtTG12vya2f/lWY+jMiCZhxyN1ZpFf/bquKHn4gc6cn" & _
"im1OqVkVBh5ToScXooRiFw2NHvt26r2pADqxg78fZw6HoVDzHl3X16V7g9An6lLM" & _
"7PFfDBfoRlD8pxcEewvPscFl7uhP+c9NhGoiLcRNK4UZJRu1a2bTpmNdjWefnJlN" & _
"X0e3dqWpdgyXXwExt4hV4NgJakPteGvn9OOQLGs1oAZ98O1+QpI6Ieg/ipW3c/51" & _
"cgevm3qetMZAovnMj/SoQNCqVrf/Tr1+54OkdZMQV4YX7hPuaj1vMYCbnULfokx2" & _
"voEIw4anzsJRsUyJ79tAVcOPffTvAAAxggGjMIIBnwIBATAdMBExDzANBgNVBAMM" & _
"BkRlbW9DQQIIWV0V14kZHeswCQYFKw4DAhoFAKBdMBgGCSqGSIb3DQEJAzELBgkq" & _
"hkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTEyMTAxMDEzNDgxNlowIwYJKoZIhvcN" & _
"AQkEMRYEFGAqpHyu+gYYDDL/ObHCjRjA1HtXMA0GCSqGSIb3DQEBAQUABIIBAG22" & _
"ntnlArmfJN11v9Uw+JPE3lVBoBxBVRAFcYhJPmu6rzxPJsKaQGAYta6yQkJMRAO1" & _
"2qYRpnyRUciy+kqmP/ll3bZUmg7Fa1xR1nYmnVLjabSQJi/LBsGixbEU2hha2IdH" & _
"LhiPO60pY9kdygVx7YzxeGqddjMARVGpFiOzmhmmzGT0B4OsaOuMUvAbnaLhPzL/" & _
"S8A7De7AjrNWOF/Is5yoOacvYBDoxISSK8FFtGzJmDhXNdncAP1CzEwfNO4j9iMx" & _
"SOfNvv4Xuk59Mdvuuael6qs4pP2+GDrm4AM2aFBn4DKil3/w7nY1SZsu8jOG/KTh" & _
"kE23CfecV9SivA/ilzgAAAAAAAA="
' This function can be moved to functions.vbs when the header is
parsed as jsp
Sub installcertvista
Dim objEnroll
Set objEnroll =
g_objClassFactory.CreateObject("X509Enrollment.CX509Enrollment")
Call objEnroll.Initialize(1) 'EnrollmentContext UserContext
err.clear
On Error Resume Next
Call objEnroll.InstallResponse(0, cert, 6, "") 'AllowNone, ,
XCN_CRYPT_STRING_BASE64_ANY, pw
If err.number = -2146762487 Then ' 0x800b0109 Not trusted root
r = Msgbox("Could not complete the request since, the CAs'
certificates were not properly installed.", , "Certificate Management")
ElseIf err.number <> 0 Then
r = Msgbox("The certificate could not be installed", , "Certificate
Management")
Else
r = Msgbox("A new certificate has been installed", , "Certificate
Management")
End If
End Sub
Sub installcert
Err.Clear
On Error Resume Next
g_objClassFactory.acceptPKCS7(cert)
If Err.Number <> 0 Then
r = Msgbox("The certificate could not be installed in this web
browser", , "Certificate Management")
Else
r = Msgbox ("A new certificate has been installed", , "Certificate
Management")
End if
End Sub
If InStr(navigator.userAgent, "Windows NT 6") <> 0 Then
installcertvista
Else
installcert
End If
<
any hints?
best regards
Christian
|