Struct aws_sdk_appmesh::model::tls_validation_context::Builder
source · pub struct Builder { /* private fields */ }
Expand description
A builder for TlsValidationContext
.
Implementations§
source§impl Builder
impl Builder
sourcepub fn trust(self, input: TlsValidationContextTrust) -> Self
pub fn trust(self, input: TlsValidationContextTrust) -> Self
A reference to where to retrieve the trust chain when validating a peer’s Transport Layer Security (TLS) certificate.
sourcepub fn set_trust(self, input: Option<TlsValidationContextTrust>) -> Self
pub fn set_trust(self, input: Option<TlsValidationContextTrust>) -> Self
A reference to where to retrieve the trust chain when validating a peer’s Transport Layer Security (TLS) certificate.
Examples found in repository?
10298 10299 10300 10301 10302 10303 10304 10305 10306 10307 10308 10309 10310 10311 10312 10313 10314 10315 10316 10317 10318 10319 10320 10321 10322 10323 10324 10325 10326 10327 10328 10329 10330 10331 10332 10333 10334 10335 10336 10337 10338 10339 10340 10341 10342 10343 10344 10345 10346 10347 10348 10349 10350 10351 10352 10353
pub(crate) fn deser_structure_crate_model_tls_validation_context<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::TlsValidationContext>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::tls_validation_context::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"trust" => {
builder = builder.set_trust(
crate::json_deser::deser_union_crate_model_tls_validation_context_trust(tokens)?
);
}
"subjectAlternativeNames" => {
builder = builder.set_subject_alternative_names(
crate::json_deser::deser_structure_crate_model_subject_alternative_names(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn subject_alternative_names(self, input: SubjectAlternativeNames) -> Self
pub fn subject_alternative_names(self, input: SubjectAlternativeNames) -> Self
A reference to an object that represents the SANs for a Transport Layer Security (TLS) validation context. If you don't specify SANs on the terminating mesh endpoint, the Envoy proxy for that node doesn't verify the SAN on a peer client certificate. If you don't specify SANs on the originating mesh endpoint, the SAN on the certificate provided by the terminating endpoint must match the mesh endpoint service discovery configuration. Since SPIRE vended certificates have a SPIFFE ID as a name, you must set the SAN since the name doesn't match the service discovery name.
sourcepub fn set_subject_alternative_names(
self,
input: Option<SubjectAlternativeNames>
) -> Self
pub fn set_subject_alternative_names(
self,
input: Option<SubjectAlternativeNames>
) -> Self
A reference to an object that represents the SANs for a Transport Layer Security (TLS) validation context. If you don't specify SANs on the terminating mesh endpoint, the Envoy proxy for that node doesn't verify the SAN on a peer client certificate. If you don't specify SANs on the originating mesh endpoint, the SAN on the certificate provided by the terminating endpoint must match the mesh endpoint service discovery configuration. Since SPIRE vended certificates have a SPIFFE ID as a name, you must set the SAN since the name doesn't match the service discovery name.
Examples found in repository?
10298 10299 10300 10301 10302 10303 10304 10305 10306 10307 10308 10309 10310 10311 10312 10313 10314 10315 10316 10317 10318 10319 10320 10321 10322 10323 10324 10325 10326 10327 10328 10329 10330 10331 10332 10333 10334 10335 10336 10337 10338 10339 10340 10341 10342 10343 10344 10345 10346 10347 10348 10349 10350 10351 10352 10353
pub(crate) fn deser_structure_crate_model_tls_validation_context<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::TlsValidationContext>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::tls_validation_context::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"trust" => {
builder = builder.set_trust(
crate::json_deser::deser_union_crate_model_tls_validation_context_trust(tokens)?
);
}
"subjectAlternativeNames" => {
builder = builder.set_subject_alternative_names(
crate::json_deser::deser_structure_crate_model_subject_alternative_names(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn build(self) -> TlsValidationContext
pub fn build(self) -> TlsValidationContext
Consumes the builder and constructs a TlsValidationContext
.
Examples found in repository?
10298 10299 10300 10301 10302 10303 10304 10305 10306 10307 10308 10309 10310 10311 10312 10313 10314 10315 10316 10317 10318 10319 10320 10321 10322 10323 10324 10325 10326 10327 10328 10329 10330 10331 10332 10333 10334 10335 10336 10337 10338 10339 10340 10341 10342 10343 10344 10345 10346 10347 10348 10349 10350 10351 10352 10353
pub(crate) fn deser_structure_crate_model_tls_validation_context<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::TlsValidationContext>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::tls_validation_context::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"trust" => {
builder = builder.set_trust(
crate::json_deser::deser_union_crate_model_tls_validation_context_trust(tokens)?
);
}
"subjectAlternativeNames" => {
builder = builder.set_subject_alternative_names(
crate::json_deser::deser_structure_crate_model_subject_alternative_names(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}