ssl - 如何在Jboss AS7中注册X509TrustManager的自定义SSL证书

标签 ssl jboss7.x

有人知道如何在 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/

相关文章:

jboss7.x - JBoss EAP 6.1 中的 HTTP session 复制

python - 属性错误 : 'module' object has no attribute 'PROTOCOL_TLSv1_2' with Python 2. 7.11

http - 将 WebSocket 升级到 TLS

java - JBoss7 如何添加外部资源文件夹?

java - 回滚时取消 ejb 定时器

java - 在 jboss 7.0.0 GA 中启用 TLSv1.3

curl - SSL 证书问题 : CN entry doesn't match with hostname in URL

php - 如何通过 SSL 连接到 Amazon RDS?

servlets - Jetty是否支持SessionTrackingMode.SSL

java - 表单验证成功后出现 403