有人知道如何在 Jboss 7 中注册 X509TrustManager 的自定义 SSL 证书吗?
根据我的项目要求,我需要在 X509TrustManager 上自定义 SSL 证书的默认行为。通过扩展 X509TrustManager 并覆盖默认行为,我已经拥有一个自定义证书,但现在我不知道要注册这个自定义文件,Jboss AS7 可以理解我自己的文件而不是默认的 X509TrustManager。
public class MyManager implements com.sun.net.ssl.X509TrustManager {
public boolean isClientTrusted(X509Certificate[] chain) { return true; }
public boolean isHostTrusted(X509Certificate[] chain) { return true; }
...
谢谢
最佳答案
如果您有一个安全域,您可以通过这种方式更改信任管理器的行为:
<security-domain name="CertificateDomain">
<authentication>
<login-module code="CertificateRoles" flag="required">
<module-option name="securityDomain" value="CertificateDomain"/>
<module-option name="verifier" value="org.jboss.security.auth.certs.AnyCertVerifier"/>
....
</login-module>
</authentication>
<jsse keystore-password="..." keystore-url=".." truststore-password="..." truststore-url="..." truststore-provider="..."/>
</security-domain>
truststore-provider
信任库的提供者。如果此属性为空,则使用信任库类型的默认 JDK 提供程序
Security subsystem configuration
另一种方法是在文件standalone.xml中添加以下属性(未测试)
<system-properties>
<property name="javax.net.ssl.trustStoreProvider" value="..."/>
<system-properties>
关于ssl - 如何在Jboss AS7中注册X509TrustManager的自定义SSL证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26034828/