Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么';在Java中,自动将自签名证书合并到我的信任库中是一个很好的策略吗?_Java_Ssl_Jboss_Pki - Fatal编程技术网

什么';在Java中,自动将自签名证书合并到我的信任库中是一个很好的策略吗?

什么';在Java中,自动将自签名证书合并到我的信任库中是一个很好的策略吗?,java,ssl,jboss,pki,Java,Ssl,Jboss,Pki,我们在JBoss中构建了一个JavaEE应用程序,向外部消费者公开web服务。我们希望保护这些服务,以便知道谁在进行web服务调用。我们有一个注册过程,要求消费者上传他们的公钥,以便我们可以将其添加到我们的信任库中。但是,当前是从命令行使用keytool将它们添加到信任库的手动过程 整个设置似乎相当原始。我不喜欢在不属于数据库的文件系统上建立信任库的想法。必须有一种方法可以让您利用数据库来存储证书。我是否应该将证书放在blob列中,并使用自己的自定义TrustManager从数据库中提取公钥并验

我们在JBoss中构建了一个JavaEE应用程序,向外部消费者公开web服务。我们希望保护这些服务,以便知道谁在进行web服务调用。我们有一个注册过程,要求消费者上传他们的公钥,以便我们可以将其添加到我们的信任库中。但是,当前是从命令行使用keytool将它们添加到信任库的手动过程


整个设置似乎相当原始。我不喜欢在不属于数据库的文件系统上建立信任库的想法。必须有一种方法可以让您利用数据库来存储证书。我是否应该将证书放在blob列中,并使用自己的自定义TrustManager从数据库中提取公钥并验证签名?或者有其他普遍实现的开源解决方案来解决这个问题吗?

为什么不将PEM文件存储在数据库中呢?它可以是BLOB或文本列

谷歌的web应用注册就是一个很好的例子


请看第4步:上传安全证书。

我认为这比pem更重要。。。我希望证书能够被信任,即使它是自签名的。目前,我们必须通过keytool来实现这一点,它在本地修改信任库,但是如果我将应用程序重新部署到另一个框中,如果我忘记了,信任库就不会出现。这是信任库问题。您必须信任存储在数据库中的所有证书。您的资源调配系统应该负责这一点。在truststore中存储自签名证书不是一个可扩展的解决方案。如果每个人都使用自签名证书,那么您最终会将整个数据库保存在信任存储中。