首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Glassfish v4中安装证书,而不将密码存储在配置文件中

在Glassfish v4中安装证书,而不将密码存储在配置文件中
EN

Stack Overflow用户
提问于 2017-08-22 14:13:28
回答 1查看 577关注 0票数 0

我有一个通配符证书,我想安装在一个玻璃鱼v4服务器。在转换证书格式并将其导入到java (使用其他主题已经讨论过的命令)之后,我们必须配置文件domain.xml以包含JKS的密码。类似于:

代码语言:javascript
复制
<jvm-options>-Djavax.net.ssl.keyStore=/myappdir/keystore.jks</jvm-options>
<jvm-options>-Djavax.net.ssl.keyStorePassword=changeit</jvm-options>
<jvm-options>-Djavax.net.ssl.trustStore=/myappdir/cacerts.jks</jvm-options>
<jvm-options>-Djavax.net.ssl.trustStorePassword=changeit</jvm-options>
<jvm-options>-Djavax.net.ssl.keyAlias=myapp-cert</jvm-options>
<jvm-options>-Djavax.net.ssl.keyStoreAlias=myapp-cert</jvm-options>
<jvm-options>-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=myapp-cert</jvm-options>

这里的问题是,JKS的密码必须插入到文件(请参阅-Djavax.net.ssl.trustStorePassword=changeit)中,我认为出于安全原因,这不是一个很好的方案。

有没有人知道在不将密码存储到配置文件的情况下将证书导入glassfish v4的更好方法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-22 15:11:57

通常,您可以避免使用别名在domain.xml中存储敏感数据。

例如,假设对于用于"secretDBpassword“的生产数据库,我的DB密码为"myApp”,则可以执行以下操作:

创建密码别名:

代码语言:javascript
复制
asadmin> create-password-alias myApp-production-db
Please enter the alias password>   // enter secretDBpassword
Please enter the alias password again>  // enter secretDBpassword
Command create-password-alias executed successfully.

将密码属性的值设置为:

代码语言:javascript
复制
${ALIAS=myApp-production-db}

这不一定要用在密码上。任何字符串都可以作为别名存储。

但是,在您的例子中,我们讨论的是用于密钥库和信任库的密码。这是主密码,可以使用asadmin命令设置:

代码语言:javascript
复制
asadmin> change-master-password

正如您在示例中所指出的,默认的是changeit,这是众所周知的,所以“更改它”是个好主意!

以这种方式使用主密码将避免在JVM选项中或在domain.xml中的任何地方指定任何密码。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45820060

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档