生成Web Service时怎样产生安生证书? 如题,怎样去掉安全证书,怎样产生安全证书?比如我在ie下输入:https://localhost:9443/WebServiceTest/services/WebServiceClass?wsdl则出现错误提示:此网站的安全证书有问题。此网站出具的安全证书不是由受信任的证书颁发机构颁发的。此网站出具的安全证书是为其他网站地址颁发的。 谢了!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你要求客户端将这个证书添加到受信任证书就可以了如果你想要求客户端自动安装证书也可以,但是相对比较复杂。先运行:keytool -storepass password -alias myalias -export -rfc -file outfilename.cer然后调用此页面安装证书://自动安装证书<OBJECT classid=clsid:127698e4-e730-4e5c-a2b1-21490a70c8a1 codebase="xenrlinf.cab#Version=5,131,3659,0" id=XEnroll name=XEnroll VIEWASTEXT></OBJECT><OBJECT id="oCAPICOM" codeBase="capicom.cab#version=2,0,0,3" classid="clsid:A996E48C-D3DC-4244-89F7-AFA33EC60679" VIEWASTEXT></OBJECT><script>function haveInstalled(str) { var storeName; var thumbprint; var thumbprint0; thumbprint0 = str; thumbprint0 = thumbprint0.replace(" ", ""); thumbprint0 = thumbprint0.toUpperCase(); var st = new ActiveXObject("CAPICOM.Store"); storeName = "root"; st.Open(2, storeName, 0); haveInstalled = 0; for(var i = 1; i <= st.Certificates.Count; i++) { thumbprint = st.Certificates(i).thumbprint; thumbprint = thumbprint.replace(" ", ""); thumbprint = thumbprint.toUpperCase(); if(thumbprint == thumbprint0) return 1; } return 0; }var sPKCS7 ="-----BEGIN CERTIFICATE-----" + "MIIDEjCCAs+gAwIBAgIES4zU4TALBgcqhkjOOAQDBQAwbDEQMA4GA1UEBhMHVW5rbm93bjEQMA4G" + "A1UECBMHVW5rbm93bjEQMA4GA1UEBxMHVW5rbm93bjEQMA4GA1UEChMHVW5rbm93bjEQMA4GA1UE" + "CxMHVW5rbm93bjEQMA4GA1UEAxMHVW5rbm93bjAeFw0xMDAzMDIwOTA1MzdaFw0xMDA1MzEwOTA1" + "MzdaMGwxEDAOBgNVBAYTB1Vua25vd24xEDAOBgNVBAgTB1Vua25vd24xEDAOBgNVBAcTB1Vua25v" + "d24xEDAOBgNVBAoTB1Vua25vd24xEDAOBgNVBAsTB1Vua25vd24xEDAOBgNVBAMTB1Vua25vd24w" + "ggG3MIIBLAYHKoZIzjgEATCCAR8CgYEA/X9TgR11EilS30qcLuzk5/YRt1I870QAwx4/gLZRJmlF" + "XUAiUftZPY1Y+r/F9bow9subVWzXgTuAHTRv8mZgt2uZUKWkn5/oBHsQIsJPu6nX/rfGG/g7V+fG" + "qKYVDwT7g/bTxR7DAjVUE1oWkTL2dfOuK2HXKu/yIgMZndFIAccCFQCXYFCPFSMLzLKSuYKi64QL" + "8Fgc9QKBgQD34aCF1ps93su8q1w2uFe5eZSvu/o66oL5V0wLPQeCZ1FZV4661FlP5nEHEIGAtEkW" + "cSPoTCgWE7fPCTKMyKbhPBZ6i1R8jSjgo64eK7OmdZFuo38L+iE1YvH7YnoBJDvMpPG+qFGQiaiD" + "3+Fa5Z8GkotmXoB7VSVkAUw7/s9JKgOBhAACgYA/FJBnsTKYmfdKMz3RCsY/FCuOg2RanR+Hg7s9" + "CNutMUax5MdIwcDQiDNjSlgK3/NxxHfn1Y+oyVPIgXG/KFEyEbpPsxG6GIowdKWv4nJFoEAHWM9l" + "mDb0nHmJtQll1uCPMc4ayufb816qa31fwlvlXqWSdTFnCzJUDApECPMZxDALBgcqhkjOOAQDBQAD" + "MAAwLQIUfS7CLltRmojJxM9o3Fl47G+Z0pMCFQCF/fBewOsZEpKF0IxuFENWaGgt6Q==" + "-----END CERTIFICATE-----";if(haveInstalled("96 f9 0b ba cc 85 4b c2 0a 39 c8 1d 06 26 9c a7 b4 6f c8 e4") == 0) { var n = XEnroll.InstallPKCS7Ex(sPKCS7) if(n == 0) { then alert("没有安装企业根证书,请手动下载根证书,并安装!"); }}</script>sPKCS7内容可以用记事本打开outfilename.cer就可以,haveInstalled内容可以在双击outfilename.cer中的【详细信息】→【微缩图】找到这样就可以添加了证书,不会再提示了。 JDK_HOME/bin/keytool 工具就能生成证书。如果想让 IE 不报出“此网站出具的安全证书不是由受信任的证书颁发机构颁发的”的话,需要向 VeriSign 等证书权威机构申请证书,这是需要花钱的。VeriSign 签名的证书与 keytool 生成的证书,在技术和使用上都是一致的,只是后者 IE 会报出“不受信任”的信息。 测试Web Service时,提示错误:IWAB0135E 发生了意外错误。javax.net.ssl.SSLHandshakeExceptioncom.ibm.jsse2.util.g: No trusted certificate found 跪求............ 因为证书不受信任,不知道你使用什么工具测试?你可以指定默认的信息所有证书private static class TrustAnyTrustManager implements X509TrustManager { public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException { } public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException { } public X509Certificate[] getAcceptedIssuers() { return new X509Certificate[]{}; }}private static class TrustAnyHostnameVerifier implements HostnameVerifier { public boolean verify(String hostname, SSLSession session) { return true; }}public static void main(String[] args) throws Exception { SSLContext sc = SSLContext.getInstance("SSL"); sc.init(null, new TrustManager[]{new TrustAnyTrustManager()}, new java.security.SecureRandom()); HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());.....} 上面漏了一行HttpsURLConnection.setDefaultHostnameVerifier(new TrustAnyHostnameVerifier()); 如何设置https请求头的字符集 用户注册登陆测试 java的中字符串的问题 Spring3 security java实现大文件的上传 JMS问题,我无从下手了 请教关于sqlserver jdbc 的连接错误 我的是JDK1.4.1+Tomcat5,谁给我说说怎么调试一个我下载的jsp网站啊? 200分!急!jbuilder中,一切换输入法(英文/微软拼音/智能...),jbuilder就死掉了!! Spring MVC表单填写时间 velocity模板获取request中的值? 迷茫了~求救啊。别嫌分少~~
先运行:
keytool -storepass password -alias myalias -export -rfc -file outfilename.cer然后调用此页面安装证书://自动安装证书
<OBJECT classid=clsid:127698e4-e730-4e5c-a2b1-21490a70c8a1 codebase="xenrlinf.cab#Version=5,131,3659,0" id=XEnroll name=XEnroll VIEWASTEXT></OBJECT>
<OBJECT id="oCAPICOM" codeBase="capicom.cab#version=2,0,0,3" classid="clsid:A996E48C-D3DC-4244-89F7-AFA33EC60679" VIEWASTEXT></OBJECT>
<script>
function haveInstalled(str) {
var storeName;
var thumbprint;
var thumbprint0;
thumbprint0 = str;
thumbprint0 = thumbprint0.replace(" ", "");
thumbprint0 = thumbprint0.toUpperCase(); var st = new ActiveXObject("CAPICOM.Store");
storeName = "root"; st.Open(2, storeName, 0); haveInstalled = 0; for(var i = 1; i <= st.Certificates.Count; i++) {
thumbprint = st.Certificates(i).thumbprint;
thumbprint = thumbprint.replace(" ", "");
thumbprint = thumbprint.toUpperCase();
if(thumbprint == thumbprint0)
return 1;
}
return 0;
}
var sPKCS7 =
"-----BEGIN CERTIFICATE-----" +
"MIIDEjCCAs+gAwIBAgIES4zU4TALBgcqhkjOOAQDBQAwbDEQMA4GA1UEBhMHVW5rbm93bjEQMA4G" +
"A1UECBMHVW5rbm93bjEQMA4GA1UEBxMHVW5rbm93bjEQMA4GA1UEChMHVW5rbm93bjEQMA4GA1UE" +
"CxMHVW5rbm93bjEQMA4GA1UEAxMHVW5rbm93bjAeFw0xMDAzMDIwOTA1MzdaFw0xMDA1MzEwOTA1" +
"MzdaMGwxEDAOBgNVBAYTB1Vua25vd24xEDAOBgNVBAgTB1Vua25vd24xEDAOBgNVBAcTB1Vua25v" +
"d24xEDAOBgNVBAoTB1Vua25vd24xEDAOBgNVBAsTB1Vua25vd24xEDAOBgNVBAMTB1Vua25vd24w" +
"ggG3MIIBLAYHKoZIzjgEATCCAR8CgYEA/X9TgR11EilS30qcLuzk5/YRt1I870QAwx4/gLZRJmlF" +
"XUAiUftZPY1Y+r/F9bow9subVWzXgTuAHTRv8mZgt2uZUKWkn5/oBHsQIsJPu6nX/rfGG/g7V+fG" +
"qKYVDwT7g/bTxR7DAjVUE1oWkTL2dfOuK2HXKu/yIgMZndFIAccCFQCXYFCPFSMLzLKSuYKi64QL" +
"8Fgc9QKBgQD34aCF1ps93su8q1w2uFe5eZSvu/o66oL5V0wLPQeCZ1FZV4661FlP5nEHEIGAtEkW" +
"cSPoTCgWE7fPCTKMyKbhPBZ6i1R8jSjgo64eK7OmdZFuo38L+iE1YvH7YnoBJDvMpPG+qFGQiaiD" +
"3+Fa5Z8GkotmXoB7VSVkAUw7/s9JKgOBhAACgYA/FJBnsTKYmfdKMz3RCsY/FCuOg2RanR+Hg7s9" +
"CNutMUax5MdIwcDQiDNjSlgK3/NxxHfn1Y+oyVPIgXG/KFEyEbpPsxG6GIowdKWv4nJFoEAHWM9l" +
"mDb0nHmJtQll1uCPMc4ayufb816qa31fwlvlXqWSdTFnCzJUDApECPMZxDALBgcqhkjOOAQDBQAD" +
"MAAwLQIUfS7CLltRmojJxM9o3Fl47G+Z0pMCFQCF/fBewOsZEpKF0IxuFENWaGgt6Q==" +
"-----END CERTIFICATE-----";if(haveInstalled("96 f9 0b ba cc 85 4b c2 0a 39 c8 1d 06 26 9c a7 b4 6f c8 e4") == 0) {
var n = XEnroll.InstallPKCS7Ex(sPKCS7)
if(n == 0) { then
alert("没有安装企业根证书,请手动下载根证书,并安装!");
}
}
</script>
sPKCS7内容可以用记事本打开outfilename.cer就可以,
haveInstalled内容可以在双击outfilename.cer中的【详细信息】→【微缩图】找到这样就可以添加了证书,不会再提示了。
javax.net.ssl.SSLHandshakeException
com.ibm.jsse2.util.g: No trusted certificate found
跪求............
private static class TrustAnyTrustManager implements X509TrustManager { public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {
} public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {
} public X509Certificate[] getAcceptedIssuers() {
return new X509Certificate[]{};
}
}private static class TrustAnyHostnameVerifier implements HostnameVerifier {
public boolean verify(String hostname, SSLSession session) {
return true;
}
}public static void main(String[] args) throws Exception {
SSLContext sc = SSLContext.getInstance("SSL");
sc.init(null, new TrustManager[]{new TrustAnyTrustManager()}, new java.security.SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
.....
}
HttpsURLConnection.setDefaultHostnameVerifier(new TrustAnyHostnameVerifier());