pub struct S3VaultKeyStorage {
pub endpoint: Option<String>,
pub region: Option<Region>,
pub path: String,
/* private fields */
}
Expand description
S3-compatible [VaultKeyStorage
] implementor.
Fields§
§endpoint: Option<String>
The S3 endpoint to use. If not specified, the endpoint will be determined automatically. This field can be used to support non-AWS S3 providers.
region: Option<Region>
The AWS region to use. If not specified, the region will be determined by the aws sdk.
path: String
The path prefix for keys to be stored within.
Implementations§
source§impl S3VaultKeyStorage
impl S3VaultKeyStorage
sourcepub fn new(bucket: impl Display) -> Self
pub fn new(bucket: impl Display) -> Self
Creates a new key storage instance for bucket
. This instance will use
the currently available Tokio runtime or create one if none is
available.
sourcepub fn new_with_runtime(bucket: impl Display, runtime: Handle) -> Self
pub fn new_with_runtime(bucket: impl Display, runtime: Handle) -> Self
Creates a new key storage instance for bucket
, which performs its
networking operations on runtime
.
sourcepub fn path(self, prefix: impl Display) -> Self
pub fn path(self, prefix: impl Display) -> Self
Sets the path prefix for vault keys to be stored within.
sourcepub fn endpoint(self, endpoint: impl Into<String>) -> Self
pub fn endpoint(self, endpoint: impl Into<String>) -> Self
Sets the endpoint to use. See Self::endpoint
for more information.
Trait Implementations§
source§impl Debug for S3VaultKeyStorage
impl Debug for S3VaultKeyStorage
source§impl Default for S3VaultKeyStorage
impl Default for S3VaultKeyStorage
source§fn default() -> S3VaultKeyStorage
fn default() -> S3VaultKeyStorage
Returns the “default value” for a type. Read more
source§impl VaultKeyStorage for S3VaultKeyStorage
impl VaultKeyStorage for S3VaultKeyStorage
source§fn set_vault_key_for(
&self,
storage_id: StorageId,
key: KeyPair
) -> Result<(), Self::Error>
fn set_vault_key_for( &self, storage_id: StorageId, key: KeyPair ) -> Result<(), Self::Error>
Store a key. Each server id should have unique storage.
source§fn vault_key_for(
&self,
storage_id: StorageId
) -> Result<Option<KeyPair>, Self::Error>
fn vault_key_for( &self, storage_id: StorageId ) -> Result<Option<KeyPair>, Self::Error>
Retrieve all previously stored vault key for a given storage id.
Auto Trait Implementations§
impl !RefUnwindSafe for S3VaultKeyStorage
impl Send for S3VaultKeyStorage
impl Sync for S3VaultKeyStorage
impl Unpin for S3VaultKeyStorage
impl !UnwindSafe for S3VaultKeyStorage
Blanket Implementations§
§impl<T> AnyVaultKeyStorage for Twhere
T: VaultKeyStorage + 'static,
impl<T> AnyVaultKeyStorage for Twhere T: VaultKeyStorage + 'static,
§fn vault_key_for(&self, server_id: StorageId) -> Result<Option<KeyPair>, Error>
fn vault_key_for(&self, server_id: StorageId) -> Result<Option<KeyPair>, Error>
Retrieve all previously stored master keys for a given storage id.
§fn set_vault_key_for(
&self,
server_id: StorageId,
key: KeyPair
) -> Result<(), Error>
fn set_vault_key_for( &self, server_id: StorageId, key: KeyPair ) -> Result<(), Error>
Store a key. Each server id should have unique storage. The keys are
uniquely encrypted per storage id and can only be decrypted by keys
contained in the storage itself.
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more