3.2.10. 从外部源获取密钥存储密码


可在 vault 配置中使用 EXT、EXT C、CMD、CMD CCLASS 方法来获取 Java 密钥存储密码。

<vault-option name="KEYSTORE_PASSWORD" value="METHOD_TO_OBTAIN_PASSWORD"/>
Copy to Clipboard Toggle word wrap

方法的描述列为:

{EXT}…​
指的是确切的命令,其中 …​ 是确切的命令。例如: {EXT}/usr/bin/getmypassword --section 1 --query company 运行 /usr/bin/getmypassword 命令,该命令可在标准输出上显示密码,并将它用作 Security Vault 的密钥存储的密码。在本例中,命令使用两个选项: 第 1 部分--query company
{EXTC[:expiration_in_millis]}…​
指的是确切的命令,其中 …​ 是传递给 Runtime.exec(String) 方法的确切命令行,以执行平台命令。命令输出的第一行用作密码。EXTC 变体缓存 expiration_in_millis 毫秒的密码。默认缓存到期时间为 0 = infinity.例如: {EXTC:120000}/usr/bin/getmypassword --section 1 --query company 验证缓存是否包含 /usr/bin/getmypassword 输出,如果它包含输出,然后将其使用。如果它不包含输出,请运行 命令将其输出到缓存并使用它。在本例中,缓存在 2 分钟后过期,该缓存为 120000 毫秒。
{CMD}…​ 或 {CMDC[:expiration_in_millis]}…​
常规命令是用 ( comma)分隔的字符串,其中第一部分是实际命令,而其他部分则表示参数。逗号可以反斜杠,使它成为 参数的一部分。例如: {CMD}/usr/bin/getmypassword,--section,1,--query,company
{CLASS[@jboss_module_spec]}classname[:ctorargs]
其中 [:ctorargs] 是用以下分隔的可选字符串 :( 冒号)将类名称传递到类名称器 The ctorargs 是一个以逗号分隔的字符串列表。例如: {CLASS@org.test.passwd}org.test.passwd.ExternamPassworProvider。在本例中,org.test.passwd.ExternamPassworProvider 类是从 org.test.passwd 模块加载的,并使用 toCharArray() 方法获取密码。如果 toCharArray() 不可用,则使用 toString() 方法。org.test.passwd.ExternamPassworProvider 类必须具有默认的构造器。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat