Adds login support for Vault clients from [vaultrs][1].
Add vaultrs-login as a depdendency to your cargo.toml:
[dependencies]
vaultrs-login = "0.1.0"
```rust use vaultrs::client::{VaultClient, VaultClientSettingsBuilder}; use vaultrslogin::LoginClient; use vaultrslogin::engines::approle::AppRoleLogin;
// Create a client let mut client = VaultClient::new( VaultClientSettingsBuilder::default() .address("https://127.0.0.1:8200") .build() .unwrap() ).unwrap();
// Use one of the login flows to obtain a token for the client let roleid = String::from("my-role-id"); let secretid = String::from("secret"); let login = AppRoleLogin { roleid, secretid };
client.login("approle", &login).await; // Token is automatically set to client ```
Run tests with cargo:
cargo test