正在关注:
https://www.vaultproject.io/docs/secrets/databases/mysql-maria/
当我通过以下方式查询保险柜时,我想显示connection_url
或数据库主机以及用户密码:
vault read database/creds/my-role
恐怕当前的数据库插件无法实现。
[其他可能的解决方案是使用连接URL创建一个KV并检索它。为了保持一致性,您可以保持与信誉相同的路径,例如
db带有vault read database/creds/my-role
的凭据和带有vault read kv/database/creds/my-role
]的连接字符串
这意味着您在设置保管库和检索凭据时会有些负担
另一个选择是从API到read the database config。
这将产生类似的结果
{ "data": { "allowed_roles": ["readonly"], "connection_details": { "connection_url": "{{username}}:{{password}}@tcp(127.0.0.1:3306)/", "username": "root" }, "plugin_name": "mysql-database-plugin" } }
您可以在其中获取
connection_url
并对其进行正则表达式以获取连接字符串。我认为这需要更多的工作,因为您的客户端需要知道如何转换连接字符串(与我提到的第一个解决方案(在您生成数据库引擎配置时生成KV的第一个解决方案进行比较))