我正在關注 Spring Vault 教程https://docs.spring.io/spring-vault/docs/current/reference/html/index.html并且我已經通過令牌訪問成功地將 Java 程序與 Vault 連接起來。在下圖中,選項卡編號 1。VaultTemplate vaultTemplate = new VaultTemplate(endpoint, new TokenAuthentication("MySecretToken"));如何使用用戶名和密碼實例化 VaultTemplate,例如當我們在此選項中通過 Vault WebUI 登錄時(選項卡編號 2)?:我正在查看這個 JavaDoc,但選擇哪一個并不明顯: https ://docs.spring.io/spring-vault/docs/current/api/index.html?overview-summary.html所以換句話說:我如何使用spring-vault,使用用戶名+密碼而不是令牌連接Vault?或者至少,我需要一個關于如何使用用戶名+密碼生成令牌的指針
1 回答

九州編程
TA貢獻1785條經驗 獲得超4個贊
正如@h3rmanj 所指出的,Spring Vault 不支持用戶名/密碼身份驗證,因為此方法旨在用于人工身份驗證,而不是機器對機器身份驗證。
身份驗證取決于您的威脅模型以及在發生違規時您可以/希望如何解決憑據的利用問題。使用用戶名/密碼,您基本上需要鎖定被破壞帳戶的用戶。這是不幸的,因為這些帳戶往往與人相關聯,您會鎖定操作員。
如果您使用 AppRole,您將獲得兩個因素,并且您可以按應用程序類型隔離帳戶。如果您不在多個應用程序中重復使用令牌,那么使用令牌會給您帶來最大的靈活性。重用很方便,但如果您遇到違規行為,您必須使所有共享相同令牌的應用程序脫機。因此,分配單個代幣具有最高的靈活性和最高的運營開銷。
介于兩者之間的任何事情都是對潛在違規行為的反應和運營工作量之間的折衷。
HTH。
添加回答
舉報
0/150
提交
取消