【发布时间】:2021-09-20 01:10:33
【问题描述】:
我正在使用 DataStax Java 驱动程序版本 3.3.0 运行 Java 应用程序,并且我试图在运行时更改 Cassandra 用户和密码。根据this issue 通过在这个对象中调用setUser 和setPassword 它应该重用它以供将来调用数据库,所以我在我的代码中做了类似
PlainTextAuthProvider authProvider = (PlainTextAuthProvider) cluster.getConfiguration().getProtocolOptions().getAuthProvider();
authProvider.setUsername(user);
authProvider.setPassword(pwd);
但即使在这个更改之后,我发现它仍然使用我在启动时设置的用户/密码。
This docu 表示在 > 4.x 版本中,您可以在运行时强制重新加载配置。
所以我的问题是,有没有办法强制所有对 Cassandra 的新调用开始使用 3.x 版本中通过 PlainTextAuthProvider 提供的新用户和通行证?
额外:我这样做是为了尝试在 Vault 密码过期时轮换密码并相应地更新驱动程序。类似于 post for relational DB accessed by Spring Boot but on Cassandra
中描述的内容【问题讨论】:
标签: cassandra datastax-java-driver spring-cloud-vault-config