#[non_exhaustive]pub struct CreateSessionInputBuilder { /* private fields */ }
Expand description
A builder for CreateSessionInput
.
Implementations§
source§impl CreateSessionInputBuilder
impl CreateSessionInputBuilder
sourcepub fn session_mode(self, input: SessionMode) -> Self
pub fn session_mode(self, input: SessionMode) -> Self
Specifies the mode of the session that will be created, either ReadWrite
or ReadOnly
. By default, a ReadWrite
session is created. A ReadWrite
session is capable of executing all the Zonal endpoint API operations on a directory bucket. A ReadOnly
session is constrained to execute the following Zonal endpoint API operations: GetObject
, HeadObject
, ListObjectsV2
, GetObjectAttributes
, ListParts
, and ListMultipartUploads
.
sourcepub fn set_session_mode(self, input: Option<SessionMode>) -> Self
pub fn set_session_mode(self, input: Option<SessionMode>) -> Self
Specifies the mode of the session that will be created, either ReadWrite
or ReadOnly
. By default, a ReadWrite
session is created. A ReadWrite
session is capable of executing all the Zonal endpoint API operations on a directory bucket. A ReadOnly
session is constrained to execute the following Zonal endpoint API operations: GetObject
, HeadObject
, ListObjectsV2
, GetObjectAttributes
, ListParts
, and ListMultipartUploads
.
sourcepub fn get_session_mode(&self) -> &Option<SessionMode>
pub fn get_session_mode(&self) -> &Option<SessionMode>
Specifies the mode of the session that will be created, either ReadWrite
or ReadOnly
. By default, a ReadWrite
session is created. A ReadWrite
session is capable of executing all the Zonal endpoint API operations on a directory bucket. A ReadOnly
session is constrained to execute the following Zonal endpoint API operations: GetObject
, HeadObject
, ListObjectsV2
, GetObjectAttributes
, ListParts
, and ListMultipartUploads
.
sourcepub fn bucket(self, input: impl Into<String>) -> Self
pub fn bucket(self, input: impl Into<String>) -> Self
The name of the bucket that you create a session for.
This field is required.sourcepub fn set_bucket(self, input: Option<String>) -> Self
pub fn set_bucket(self, input: Option<String>) -> Self
The name of the bucket that you create a session for.
sourcepub fn get_bucket(&self) -> &Option<String>
pub fn get_bucket(&self) -> &Option<String>
The name of the bucket that you create a session for.
sourcepub fn server_side_encryption(self, input: ServerSideEncryption) -> Self
pub fn server_side_encryption(self, input: ServerSideEncryption) -> Self
The server-side encryption algorithm to use when you store objects in the directory bucket.
For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256
) and server-side encryption with KMS keys (SSE-KMS) (aws:kms
). By default, Amazon S3 encrypts data with SSE-S3. For more information, see Protecting data with server-side encryption in the Amazon S3 User Guide.
sourcepub fn set_server_side_encryption(
self,
input: Option<ServerSideEncryption>,
) -> Self
pub fn set_server_side_encryption( self, input: Option<ServerSideEncryption>, ) -> Self
The server-side encryption algorithm to use when you store objects in the directory bucket.
For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256
) and server-side encryption with KMS keys (SSE-KMS) (aws:kms
). By default, Amazon S3 encrypts data with SSE-S3. For more information, see Protecting data with server-side encryption in the Amazon S3 User Guide.
sourcepub fn get_server_side_encryption(&self) -> &Option<ServerSideEncryption>
pub fn get_server_side_encryption(&self) -> &Option<ServerSideEncryption>
The server-side encryption algorithm to use when you store objects in the directory bucket.
For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256
) and server-side encryption with KMS keys (SSE-KMS) (aws:kms
). By default, Amazon S3 encrypts data with SSE-S3. For more information, see Protecting data with server-side encryption in the Amazon S3 User Guide.
sourcepub fn ssekms_key_id(self, input: impl Into<String>) -> Self
pub fn ssekms_key_id(self, input: impl Into<String>) -> Self
If you specify x-amz-server-side-encryption
with aws:kms
, you must specify the x-amz-server-side-encryption-aws-kms-key-id
header with the ID (Key ID or Key ARN) of the KMS symmetric encryption customer managed key to use. Otherwise, you get an HTTP 400 Bad Request
error. Only use the key ID or key ARN. The key alias format of the KMS key isn't supported. Also, if the KMS key doesn't exist in the same account that't issuing the command, you must use the full Key ARN not the Key ID.
Your SSE-KMS configuration can only support 1 customer managed key per directory bucket for the lifetime of the bucket. The Amazon Web Services managed key (aws/s3
) isn't supported.
sourcepub fn set_ssekms_key_id(self, input: Option<String>) -> Self
pub fn set_ssekms_key_id(self, input: Option<String>) -> Self
If you specify x-amz-server-side-encryption
with aws:kms
, you must specify the x-amz-server-side-encryption-aws-kms-key-id
header with the ID (Key ID or Key ARN) of the KMS symmetric encryption customer managed key to use. Otherwise, you get an HTTP 400 Bad Request
error. Only use the key ID or key ARN. The key alias format of the KMS key isn't supported. Also, if the KMS key doesn't exist in the same account that't issuing the command, you must use the full Key ARN not the Key ID.
Your SSE-KMS configuration can only support 1 customer managed key per directory bucket for the lifetime of the bucket. The Amazon Web Services managed key (aws/s3
) isn't supported.
sourcepub fn get_ssekms_key_id(&self) -> &Option<String>
pub fn get_ssekms_key_id(&self) -> &Option<String>
If you specify x-amz-server-side-encryption
with aws:kms
, you must specify the x-amz-server-side-encryption-aws-kms-key-id
header with the ID (Key ID or Key ARN) of the KMS symmetric encryption customer managed key to use. Otherwise, you get an HTTP 400 Bad Request
error. Only use the key ID or key ARN. The key alias format of the KMS key isn't supported. Also, if the KMS key doesn't exist in the same account that't issuing the command, you must use the full Key ARN not the Key ID.
Your SSE-KMS configuration can only support 1 customer managed key per directory bucket for the lifetime of the bucket. The Amazon Web Services managed key (aws/s3
) isn't supported.
sourcepub fn ssekms_encryption_context(self, input: impl Into<String>) -> Self
pub fn ssekms_encryption_context(self, input: impl Into<String>) -> Self
Specifies the Amazon Web Services KMS Encryption Context as an additional encryption context to use for object encryption. The value of this header is a Base64-encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future GetObject
operations on this object.
General purpose buckets - This value must be explicitly added during CopyObject
operations if you want an additional encryption context for your object. For more information, see Encryption context in the Amazon S3 User Guide.
Directory buckets - You can optionally provide an explicit encryption context value. The value must match the default encryption context - the bucket Amazon Resource Name (ARN). An additional encryption context value is not supported.
sourcepub fn set_ssekms_encryption_context(self, input: Option<String>) -> Self
pub fn set_ssekms_encryption_context(self, input: Option<String>) -> Self
Specifies the Amazon Web Services KMS Encryption Context as an additional encryption context to use for object encryption. The value of this header is a Base64-encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future GetObject
operations on this object.
General purpose buckets - This value must be explicitly added during CopyObject
operations if you want an additional encryption context for your object. For more information, see Encryption context in the Amazon S3 User Guide.
Directory buckets - You can optionally provide an explicit encryption context value. The value must match the default encryption context - the bucket Amazon Resource Name (ARN). An additional encryption context value is not supported.
sourcepub fn get_ssekms_encryption_context(&self) -> &Option<String>
pub fn get_ssekms_encryption_context(&self) -> &Option<String>
Specifies the Amazon Web Services KMS Encryption Context as an additional encryption context to use for object encryption. The value of this header is a Base64-encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future GetObject
operations on this object.
General purpose buckets - This value must be explicitly added during CopyObject
operations if you want an additional encryption context for your object. For more information, see Encryption context in the Amazon S3 User Guide.
Directory buckets - You can optionally provide an explicit encryption context value. The value must match the default encryption context - the bucket Amazon Resource Name (ARN). An additional encryption context value is not supported.
sourcepub fn bucket_key_enabled(self, input: bool) -> Self
pub fn bucket_key_enabled(self, input: bool) -> Self
Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using KMS keys (SSE-KMS).
S3 Bucket Keys are always enabled for GET
and PUT
operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets to directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.
sourcepub fn set_bucket_key_enabled(self, input: Option<bool>) -> Self
pub fn set_bucket_key_enabled(self, input: Option<bool>) -> Self
Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using KMS keys (SSE-KMS).
S3 Bucket Keys are always enabled for GET
and PUT
operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets to directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.
sourcepub fn get_bucket_key_enabled(&self) -> &Option<bool>
pub fn get_bucket_key_enabled(&self) -> &Option<bool>
Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using KMS keys (SSE-KMS).
S3 Bucket Keys are always enabled for GET
and PUT
operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets to directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.
sourcepub fn build(self) -> Result<CreateSessionInput, BuildError>
pub fn build(self) -> Result<CreateSessionInput, BuildError>
Consumes the builder and constructs a CreateSessionInput
.
source§impl CreateSessionInputBuilder
impl CreateSessionInputBuilder
sourcepub async fn send_with(
self,
client: &Client,
) -> Result<CreateSessionOutput, SdkError<CreateSessionError, HttpResponse>>
pub async fn send_with( self, client: &Client, ) -> Result<CreateSessionOutput, SdkError<CreateSessionError, HttpResponse>>
Sends a request with this input using the given client.
Trait Implementations§
source§impl Clone for CreateSessionInputBuilder
impl Clone for CreateSessionInputBuilder
source§fn clone(&self) -> CreateSessionInputBuilder
fn clone(&self) -> CreateSessionInputBuilder
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for CreateSessionInputBuilder
impl Debug for CreateSessionInputBuilder
source§impl Default for CreateSessionInputBuilder
impl Default for CreateSessionInputBuilder
source§fn default() -> CreateSessionInputBuilder
fn default() -> CreateSessionInputBuilder
impl StructuralPartialEq for CreateSessionInputBuilder
Auto Trait Implementations§
impl Freeze for CreateSessionInputBuilder
impl RefUnwindSafe for CreateSessionInputBuilder
impl Send for CreateSessionInputBuilder
impl Sync for CreateSessionInputBuilder
impl Unpin for CreateSessionInputBuilder
impl UnwindSafe for CreateSessionInputBuilder
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