使用CAS和JBoss未找到受信任的证书

使用CAS和JBoss未找到受信任的证书,jboss,certificate,cas,Jboss,Certificate,Cas,我正在尝试通过Jboss应用程序中的CAS+LDAP进行身份验证。配置如下所示: 服务器1:JBoss6.10。Cas部署在这里 服务器1:使用OpenDS的LDAP 服务器2:用于登录应用程序的Jboss 我已经将jboss配置为正确使用SSL,CAS成功地读取和验证LDAP 当我进入(通过https)server1:8443/app/时,我被重定向到server2:8443/cas/并显示登录屏幕。我使用LDAP上的有效用户登录,但当流返回到应用程序时,我总是得到以下信息: javax.

我正在尝试通过Jboss应用程序中的CAS+LDAP进行身份验证。配置如下所示:

  • 服务器1:JBoss6.10。Cas部署在这里
  • 服务器1:使用OpenDS的LDAP
  • 服务器2:用于登录应用程序的Jboss
我已经将jboss配置为正确使用SSL,CAS成功地读取和验证LDAP

当我进入(通过https)server1:8443/app/时,我被重定向到server2:8443/cas/并显示登录屏幕。我使用LDAP上的有效用户登录,但当流返回到应用程序时,我总是得到以下信息:

javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: No trusted certificate found
我已经了解到这是一个证书问题,因为这是一个开发环境,我正在尝试自签名证书。所以我这样做了:

  • 使用生成自登录服务器1

    keytool-genkey-alias jbosskey-keypass password-keyalg RSA-keystore server.keystore

  • 使用以下内容获取服务器1的证书:

    keytool-export-alias jbosskey-keypass password-file server.crt-keystore server.keystore

  • 将server.crt复制到Server2并将其导入Jboss的信任库

    keytool-import-alias server1-file server.crt-keystore C:\dev\jboss-6.1.0.Final\server.truststore

  • 这让我有了灵感。因此,我还导入了JVM的cacerts

    keytool-import-alias server1-file server.crt-keystore C:\dev\jdk160_18\jre\lib\security\cacerts

  • 不起作用,所以我尝试将证书添加到Server2的Jboss密钥库中

    keytool-import-alias server1-file server.crt-keystore C:\dev\jboss-6.1.0.Final\keystore.jks

  • Server1 Jboss server.xml

      <Connector protocol="HTTP/1.1" SSLEnabled="true" 
           port="${jboss.web.https.port}" address="${jboss.bind.address}"
           scheme="https" secure="true" clientAuth="false" 
           keystoreFile="${jboss.server.home.dir}/conf/server.keystore"
           keystorePass="password" sslProtocol = "TLS" 
    />
    
    <Connector protocol="HTTP/1.1" SSLEnabled="true"
                port="8443" address="${jboss.bind.address}"
                scheme="https" secure="true" clientAuth="false"
                keystoreFile="C:\dev\jboss-6.1.0.Final\keystore.jks"
                keystorePass="password"
                truststoreFile="C:\dev\jboss-6.1.0.Final\server.truststore"
                truststorePass="password"
                sslProtocol = "TLS" />
    
    
    
    Server2 Jboss server.xml

      <Connector protocol="HTTP/1.1" SSLEnabled="true" 
           port="${jboss.web.https.port}" address="${jboss.bind.address}"
           scheme="https" secure="true" clientAuth="false" 
           keystoreFile="${jboss.server.home.dir}/conf/server.keystore"
           keystorePass="password" sslProtocol = "TLS" 
    />
    
    <Connector protocol="HTTP/1.1" SSLEnabled="true"
                port="8443" address="${jboss.bind.address}"
                scheme="https" secure="true" clientAuth="false"
                keystoreFile="C:\dev\jboss-6.1.0.Final\keystore.jks"
                keystorePass="password"
                truststoreFile="C:\dev\jboss-6.1.0.Final\server.truststore"
                truststorePass="password"
                sslProtocol = "TLS" />
    
    
    
    这件事我已经纠结了好几天了,不知道我是否遗漏了什么。我是不是错过了钥匙工具的重要功能

    提前谢谢