Expand description
Async and blocking Rust client for the HashiCorp Vault HTTP API
use vault_client_rs::{VaultClient, Kv2Operations};
let client = VaultClient::new("https://vault.example.com:8200", "hvs.EXAMPLE")?;
// KV v2: read secret data directly
let secret: std::collections::HashMap<String, String> =
client.kv2("secret").read_data("my/path").await?;
// Sys
let health = client.sys().health().await?;§Feature flags
| Flag | Effect |
|---|---|
blocking | Enables [blocking::BlockingVaultClient] |
auto-renew | Enables [RenewalDaemon] and [LeaseWatcher] for background token/lease lifecycle |
Re-exports§
pub use client::ClientBuilder;pub use client::VaultClient;pub use client::encode_path;pub use types::error::VaultError;pub use types::redaction::RedactionLevel;pub use types::redaction::redact;pub use types::redaction::redaction_level;pub use types::redaction::set_redaction_level;pub use api::auth::approle::AppRoleAuthHandler;pub use api::auth::aws::AwsAuthHandler;pub use api::auth::azure::AzureAuthHandler;pub use api::auth::cert::CertAuthHandler;pub use api::auth::gcp::GcpAuthHandler;pub use api::auth::github::GithubAuthHandler;pub use api::auth::kerberos::KerberosAuthHandler;pub use api::auth::kubernetes::K8sAuthHandler;pub use api::auth::ldap::LdapAuthHandler;pub use api::auth::oidc::OidcAuthHandler;pub use api::auth::radius::RadiusAuthHandler;pub use api::auth::token::TokenAuthHandler;pub use api::auth::userpass::UserpassAuthHandler;pub use api::auth::AppRoleLogin;pub use api::auth::AuthHandler;pub use api::auth::AuthMethod;pub use api::auth::AwsLogin;pub use api::auth::AzureLogin;pub use api::auth::GcpLogin;pub use api::auth::GithubLogin;pub use api::auth::JwtLogin;pub use api::auth::K8sLogin;pub use api::auth::LdapLogin;pub use api::auth::UserpassLogin;pub use api::aws::AwsSecretsHandler;pub use api::azure::AzureHandler;pub use api::consul::ConsulHandler;pub use api::cubbyhole::CubbyholeHandler;pub use api::database::DatabaseHandler;pub use api::gcp::GcpHandler;pub use api::identity::IdentityHandler;pub use api::kv1::Kv1Handler;pub use api::kv2::Kv2Handler;pub use api::nomad::NomadHandler;pub use api::pki::PkiHandler;pub use api::rabbitmq::RabbitmqHandler;pub use api::ssh::SshHandler;pub use api::sys::SysHandler;pub use api::terraform::TerraformCloudHandler;pub use api::totp::TotpHandler;pub use api::transit::TransitHandler;pub use api::traits::AppRoleAuthOperations;pub use api::traits::AwsAuthOperations;pub use api::traits::AwsSecretsOperations;pub use api::traits::AzureAuthOperations;pub use api::traits::AzureSecretsOperations;pub use api::traits::CertAuthOperations;pub use api::traits::ConsulOperations;pub use api::traits::CubbyholeOperations;pub use api::traits::DatabaseOperations;pub use api::traits::GcpAuthOperations;pub use api::traits::GcpSecretsOperations;pub use api::traits::GithubAuthOperations;pub use api::traits::IdentityOperations;pub use api::traits::K8sAuthOperations;pub use api::traits::KerberosAuthOperations;pub use api::traits::Kv1Operations;pub use api::traits::Kv2Operations;pub use api::traits::LdapAuthOperations;pub use api::traits::NomadOperations;pub use api::traits::OidcAuthOperations;pub use api::traits::PkiOperations;pub use api::traits::RabbitmqOperations;pub use api::traits::RadiusAuthOperations;pub use api::traits::SshOperations;pub use api::traits::SysOperations;pub use api::traits::TerraformCloudOperations;pub use api::traits::TokenAuthOperations;pub use api::traits::TotpOperations;pub use api::traits::TransitOperations;pub use api::traits::UserpassAuthOperations;pub use types::kv::KvConfig;pub use types::kv::KvFullMetadata;pub use types::kv::KvMetadata;pub use types::kv::KvMetadataParams;pub use types::kv::KvReadResponse;pub use types::kv::KvVersionMetadata;pub use types::response::AuthInfo;pub use types::response::VaultResponse;pub use types::response::WrapInfo;pub use types::secret::MountPath;pub use types::secret::SecretPath;pub use types::transit::TransitBatchCiphertext;pub use types::transit::TransitBatchDecryptItem;pub use types::transit::TransitBatchPlaintext;pub use types::transit::TransitBatchSignInput;pub use types::transit::TransitBatchSignResult;pub use types::transit::TransitBatchVerifyInput;pub use types::transit::TransitBatchVerifyResult;pub use types::transit::TransitCacheConfig;pub use types::transit::TransitDataKey;pub use types::transit::TransitExportedKey;pub use types::transit::TransitKeyConfig;pub use types::transit::TransitKeyInfo;pub use types::transit::TransitKeyParams;pub use types::transit::TransitSignParams;pub use types::pki::PkiAcmeConfig;pub use types::pki::PkiCertificate;pub use types::pki::PkiCertificateEntry;pub use types::pki::PkiCrossSignRequest;pub use types::pki::PkiCsr;pub use types::pki::PkiImportResult;pub use types::pki::PkiIntermediateParams;pub use types::pki::PkiIssueParams;pub use types::pki::PkiIssuedCert;pub use types::pki::PkiIssuerInfo;pub use types::pki::PkiIssuerUpdateParams;pub use types::pki::PkiRevocationInfo;pub use types::pki::PkiRole;pub use types::pki::PkiRoleParams;pub use types::pki::PkiRootParams;pub use types::pki::PkiSignParams;pub use types::pki::PkiSignedCert;pub use types::pki::PkiTidyParams;pub use types::pki::PkiTidyStatus;pub use types::pki::PkiUrlsConfig;pub use types::auth::AppRoleCreateRequest;pub use types::auth::AppRoleInfo;pub use types::auth::AppRoleSecretIdResponse;pub use types::auth::CertRoleInfo;pub use types::auth::CertRoleRequest;pub use types::auth::GithubConfig;pub use types::auth::GithubConfigRequest;pub use types::auth::GithubTeamInfo;pub use types::auth::GithubTeamMapping;pub use types::auth::K8sAuthConfigRequest;pub use types::auth::K8sAuthRoleInfo;pub use types::auth::K8sAuthRoleRequest;pub use types::auth::KerberosConfig;pub use types::auth::KerberosConfigRequest;pub use types::auth::KerberosGroup;pub use types::auth::KerberosGroupRequest;pub use types::auth::KerberosLdapConfig;pub use types::auth::KerberosLdapConfigRequest;pub use types::auth::LdapConfig;pub use types::auth::LdapConfigRequest;pub use types::auth::LdapGroup;pub use types::auth::LdapGroupRequest;pub use types::auth::LdapUser;pub use types::auth::LdapUserRequest;pub use types::auth::OidcConfig;pub use types::auth::OidcConfigRequest;pub use types::auth::OidcRoleInfo;pub use types::auth::OidcRoleRequest;pub use types::auth::RadiusConfig;pub use types::auth::RadiusConfigRequest;pub use types::auth::RadiusUser;pub use types::auth::RadiusUserRequest;pub use types::auth::TokenCreateRequest;pub use types::auth::TokenLookupResponse;pub use types::auth::UserpassUserInfo;pub use types::auth::UserpassUserRequest;pub use types::sys::AuditDevice;pub use types::sys::AuditParams;pub use types::sys::AuthMountInfo;pub use types::sys::AuthMountParams;pub use types::sys::AutopilotServerState;pub use types::sys::AutopilotState;pub use types::sys::GenerateRootInitRequest;pub use types::sys::GenerateRootStatus;pub use types::sys::HealthResponse;pub use types::sys::HostInfo;pub use types::sys::InFlightRequest;pub use types::sys::InitParams;pub use types::sys::InitResponse;pub use types::sys::KeyStatus;pub use types::sys::LeaderResponse;pub use types::sys::LeaseInfo;pub use types::sys::LeaseRenewal;pub use types::sys::MountConfig;pub use types::sys::MountInfo;pub use types::sys::MountParams;pub use types::sys::MountTuneParams;pub use types::sys::NamespaceInfo;pub use types::sys::PluginInfo;pub use types::sys::PolicyInfo;pub use types::sys::RaftConfig;pub use types::sys::RaftServer;pub use types::sys::RateLimitQuota;pub use types::sys::RateLimitQuotaRequest;pub use types::sys::RegisterPluginRequest;pub use types::sys::RekeyInitRequest;pub use types::sys::RekeyStatus;pub use types::sys::RemountStatus;pub use types::sys::SealStatus;pub use types::sys::VersionHistoryEntry;pub use types::aws::AwsAuthConfig;pub use types::aws::AwsAuthConfigRequest;pub use types::aws::AwsAuthLoginRequest;pub use types::aws::AwsAuthRoleInfo;pub use types::aws::AwsAuthRoleRequest;pub use types::aws::AwsConfigRoot;pub use types::aws::AwsConfigRootRequest;pub use types::aws::AwsCredentials;pub use types::aws::AwsRole;pub use types::aws::AwsRoleRequest;pub use types::aws::AwsStsRequest;pub use types::azure::AzureAuthConfig;pub use types::azure::AzureAuthConfigRequest;pub use types::azure::AzureAuthLoginRequest;pub use types::azure::AzureAuthRoleInfo;pub use types::azure::AzureAuthRoleRequest;pub use types::azure::AzureConfig;pub use types::azure::AzureConfigRequest;pub use types::azure::AzureCredentials;pub use types::azure::AzureRole;pub use types::azure::AzureRoleRequest;pub use types::gcp::GcpAuthConfig;pub use types::gcp::GcpAuthConfigRequest;pub use types::gcp::GcpAuthRoleInfo;pub use types::gcp::GcpAuthRoleRequest;pub use types::gcp::GcpConfig;pub use types::gcp::GcpConfigRequest;pub use types::gcp::GcpOAuthToken;pub use types::gcp::GcpRoleset;pub use types::gcp::GcpRolesetRequest;pub use types::gcp::GcpServiceAccountKey;pub use types::database::DatabaseConfig;pub use types::database::DatabaseConfigRequest;pub use types::database::DatabaseCredentials;pub use types::database::DatabaseRole;pub use types::database::DatabaseRoleRequest;pub use types::database::DatabaseStaticCredentials;pub use types::database::DatabaseStaticRole;pub use types::database::DatabaseStaticRoleRequest;pub use types::ssh::SshCaConfigRequest;pub use types::ssh::SshCaPublicKey;pub use types::ssh::SshRole;pub use types::ssh::SshRoleRequest;pub use types::ssh::SshSignRequest;pub use types::ssh::SshSignedKey;pub use types::ssh::SshVerifyRequest;pub use types::ssh::SshVerifyResponse;pub use types::identity::Entity;pub use types::identity::EntityAlias;pub use types::identity::EntityAliasCreateRequest;pub use types::identity::EntityAliasResponse;pub use types::identity::EntityCreateRequest;pub use types::identity::Group;pub use types::identity::GroupAlias;pub use types::identity::GroupAliasCreateRequest;pub use types::identity::GroupAliasResponse;pub use types::identity::GroupCreateRequest;pub use types::totp::TotpCode;pub use types::totp::TotpGenerateResponse;pub use types::totp::TotpKeyInfo;pub use types::totp::TotpKeyRequest;pub use types::totp::TotpValidation;pub use types::consul::ConsulConfig;pub use types::consul::ConsulConfigRequest;pub use types::consul::ConsulCredentials;pub use types::consul::ConsulRole;pub use types::consul::ConsulRoleRequest;pub use types::nomad::NomadConfig;pub use types::nomad::NomadConfigRequest;pub use types::nomad::NomadCredentials;pub use types::nomad::NomadRole;pub use types::nomad::NomadRoleRequest;pub use types::rabbitmq::RabbitmqConfigRequest;pub use types::rabbitmq::RabbitmqCredentials;pub use types::rabbitmq::RabbitmqRole;pub use types::rabbitmq::RabbitmqRoleRequest;pub use types::terraform::TerraformCloudConfig;pub use types::terraform::TerraformCloudConfigRequest;pub use types::terraform::TerraformCloudRole;pub use types::terraform::TerraformCloudRoleRequest;pub use types::terraform::TerraformCloudToken;
Modules§
Structs§
- Circuit
Breaker Config - Configuration for the client-side circuit breaker
Type Aliases§
- Secret
String - Secret string type.