#[non_exhaustive]pub struct OriginAccessControlConfig {
pub name: String,
pub description: Option<String>,
pub signing_protocol: OriginAccessControlSigningProtocols,
pub signing_behavior: OriginAccessControlSigningBehaviors,
pub origin_access_control_origin_type: OriginAccessControlOriginTypes,
}Expand description
A CloudFront origin access control configuration.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.name: StringA name to identify the origin access control. You can specify up to 64 characters.
description: Option<String>A description of the origin access control.
signing_protocol: OriginAccessControlSigningProtocolsThe signing protocol of the origin access control, which determines how CloudFront signs (authenticates) requests. The only valid value is sigv4.
signing_behavior: OriginAccessControlSigningBehaviorsSpecifies which requests CloudFront signs (adds authentication information to). Specify always for the most common use case. For more information, see origin access control advanced settings in the Amazon CloudFront Developer Guide.
This field can have one of the following values:
-
always– CloudFront signs all origin requests, overwriting theAuthorizationheader from the viewer request if one exists. -
never– CloudFront doesn't sign any origin requests. This value turns off origin access control for all origins in all distributions that use this origin access control. -
no-override– If the viewer request doesn't contain theAuthorizationheader, then CloudFront signs the origin request. If the viewer request contains theAuthorizationheader, then CloudFront doesn't sign the origin request and instead passes along theAuthorizationheader from the viewer request. WARNING: To pass along theAuthorizationheader from the viewer request, you must add theAuthorizationheader to a cache policy for all cache behaviors that use origins associated with this origin access control.
origin_access_control_origin_type: OriginAccessControlOriginTypesThe type of origin that this origin access control is for.
Implementations§
source§impl OriginAccessControlConfig
impl OriginAccessControlConfig
sourcepub fn name(&self) -> &str
pub fn name(&self) -> &str
A name to identify the origin access control. You can specify up to 64 characters.
sourcepub fn description(&self) -> Option<&str>
pub fn description(&self) -> Option<&str>
A description of the origin access control.
sourcepub fn signing_protocol(&self) -> &OriginAccessControlSigningProtocols
pub fn signing_protocol(&self) -> &OriginAccessControlSigningProtocols
The signing protocol of the origin access control, which determines how CloudFront signs (authenticates) requests. The only valid value is sigv4.
sourcepub fn signing_behavior(&self) -> &OriginAccessControlSigningBehaviors
pub fn signing_behavior(&self) -> &OriginAccessControlSigningBehaviors
Specifies which requests CloudFront signs (adds authentication information to). Specify always for the most common use case. For more information, see origin access control advanced settings in the Amazon CloudFront Developer Guide.
This field can have one of the following values:
-
always– CloudFront signs all origin requests, overwriting theAuthorizationheader from the viewer request if one exists. -
never– CloudFront doesn't sign any origin requests. This value turns off origin access control for all origins in all distributions that use this origin access control. -
no-override– If the viewer request doesn't contain theAuthorizationheader, then CloudFront signs the origin request. If the viewer request contains theAuthorizationheader, then CloudFront doesn't sign the origin request and instead passes along theAuthorizationheader from the viewer request. WARNING: To pass along theAuthorizationheader from the viewer request, you must add theAuthorizationheader to a cache policy for all cache behaviors that use origins associated with this origin access control.
sourcepub fn origin_access_control_origin_type(
&self,
) -> &OriginAccessControlOriginTypes
pub fn origin_access_control_origin_type( &self, ) -> &OriginAccessControlOriginTypes
The type of origin that this origin access control is for.
source§impl OriginAccessControlConfig
impl OriginAccessControlConfig
sourcepub fn builder() -> OriginAccessControlConfigBuilder
pub fn builder() -> OriginAccessControlConfigBuilder
Creates a new builder-style object to manufacture OriginAccessControlConfig.
Trait Implementations§
source§impl Clone for OriginAccessControlConfig
impl Clone for OriginAccessControlConfig
source§fn clone(&self) -> OriginAccessControlConfig
fn clone(&self) -> OriginAccessControlConfig
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for OriginAccessControlConfig
impl Debug for OriginAccessControlConfig
impl StructuralPartialEq for OriginAccessControlConfig
Auto Trait Implementations§
impl Freeze for OriginAccessControlConfig
impl RefUnwindSafe for OriginAccessControlConfig
impl Send for OriginAccessControlConfig
impl Sync for OriginAccessControlConfig
impl Unpin for OriginAccessControlConfig
impl UnwindSafe for OriginAccessControlConfig
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)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>
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>
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 more