pub struct SecretBuilder<T>where
T: SecretBuilderState,{ /* private fields */ }Expand description
Builder for AWS Secrets Manager secrets.
See https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html Supports both static secret strings and automatically generated secrets.
§Example
use rusty_cdk_core::stack::StackBuilder;
use rusty_cdk_core::secretsmanager::{SecretBuilder, GenerateSecretStringBuilder};
use rusty_cdk_core::wrappers::*;
use rusty_cdk_macros::string_for_secret;
let mut stack_builder = StackBuilder::new();
// Create a secret with a static value
let secret = SecretBuilder::new("my-secret")
.name(string_for_secret!("my-secret-name"))
.description("My database password")
.secret_string("my-password")
.build(&mut stack_builder);
// Create a secret with auto-generated value
let generated_secret_config = GenerateSecretStringBuilder::new()
.password_length(32)
.exclude_punctuation(true)
.build();
let generated_secret = SecretBuilder::new("generated-secret")
.generate_secret_string(generated_secret_config)
.build(&mut stack_builder);Implementations§
Source§impl SecretBuilder<StartState>
impl SecretBuilder<StartState>
Sourcepub fn new(id: &str) -> SecretBuilder<StartState>
pub fn new(id: &str) -> SecretBuilder<StartState>
pub fn name(self, name: StringForSecret) -> SecretBuilder<StartState>
pub fn description<T>(self, description: T) -> SecretBuilder<StartState>
pub fn secret_string<T>( self, value: T, ) -> SecretBuilder<SelectedSecretTypeState>
pub fn generate_secret_string( self, value: GenerateSecretString, ) -> SecretBuilder<SelectedSecretTypeState>
Source§impl SecretBuilder<SelectedSecretTypeState>
impl SecretBuilder<SelectedSecretTypeState>
pub fn build(self, stack_builder: &mut StackBuilder) -> SecretRef
Auto Trait Implementations§
impl<T> Freeze for SecretBuilder<T>
impl<T> RefUnwindSafe for SecretBuilder<T>where
T: RefUnwindSafe,
impl<T> Send for SecretBuilder<T>where
T: Send,
impl<T> Sync for SecretBuilder<T>where
T: Sync,
impl<T> Unpin for SecretBuilder<T>where
T: Unpin,
impl<T> UnwindSafe for SecretBuilder<T>where
T: UnwindSafe,
Blanket Implementations§
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreCreates a shared type from an unshared type.