12 releases

0.2.3 Feb 21, 2025
0.2.2 Nov 11, 2024
0.2.1 Mar 20, 2024
0.1.7 Mar 25, 2023
0.1.4 Sep 22, 2021

#538 in Authentication

Download history 586/week @ 2024-12-17 196/week @ 2024-12-24 300/week @ 2024-12-31 611/week @ 2025-01-07 447/week @ 2025-01-14 776/week @ 2025-01-21 538/week @ 2025-01-28 963/week @ 2025-02-04 937/week @ 2025-02-11 1799/week @ 2025-02-18 1350/week @ 2025-02-25 1371/week @ 2025-03-04 1392/week @ 2025-03-11 1187/week @ 2025-03-18 1269/week @ 2025-03-25 1370/week @ 2025-04-01

5,469 downloads per month
Used in 2 crates

MIT license

470KB
10K SLoC

vaultrs-login

Adds login support for Vault clients from vaultrs.

Installation

Add vaultrs-login as a dependency to your cargo.toml:

[dependencies]
vaultrs-login = "0.2.0"

Usage

use vaultrs::client::{VaultClient, VaultClientSettingsBuilder};
use vaultrs_login::LoginClient;
use vaultrs_login::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 role_id = String::from("my-role-id");
let secret_id = String::from("secret");
let login = AppRoleLogin { role_id, secret_id };

client.login("approle", &login).await; // Token is automatically set to client

vaultrs-login

Adds login support for Vault clients from [vaultrs][1].

Installation

Add vaultrs-login as a dependency to your cargo.toml:

[dependencies]
vaultrs-login = "0.2.3"

Usage

use vaultrs::client::{VaultClient, VaultClientSettingsBuilder};
use vaultrs_login::LoginClient;
use vaultrs_login::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 role_id = String::from("my-role-id");
let secret_id = String::from("secret");
let login = AppRoleLogin { role_id, secret_id };

client.login("approle", &login).await; // Token is automatically set to client

Testing

Run tests with cargo:

cargo test

Dependencies

~7–25MB
~333K SLoC