Class CreateSessionRequest
- java.lang.Object
-
- software.amazon.awssdk.core.SdkRequest
-
- software.amazon.awssdk.awscore.AwsRequest
-
- software.amazon.awssdk.services.s3.model.S3Request
-
- software.amazon.awssdk.services.s3.model.CreateSessionRequest
-
- All Implemented Interfaces:
SdkPojo
,ToCopyableBuilder<CreateSessionRequest.Builder,CreateSessionRequest>
@Generated("software.amazon.awssdk:codegen") public final class CreateSessionRequest extends S3Request implements ToCopyableBuilder<CreateSessionRequest.Builder,CreateSessionRequest>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
CreateSessionRequest.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description String
bucket()
The name of the bucket that you create a session for.Boolean
bucketKeyEnabled()
Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using KMS keys (SSE-KMS).static CreateSessionRequest.Builder
builder()
boolean
equals(Object obj)
boolean
equalsBySdkFields(Object obj)
<T> Optional<T>
getValueForField(String fieldName, Class<T> clazz)
int
hashCode()
Map<String,SdkField<?>>
sdkFieldNameToField()
List<SdkField<?>>
sdkFields()
static Class<? extends CreateSessionRequest.Builder>
serializableBuilderClass()
ServerSideEncryption
serverSideEncryption()
The server-side encryption algorithm to use when you store objects in the directory bucket.String
serverSideEncryptionAsString()
The server-side encryption algorithm to use when you store objects in the directory bucket.SessionMode
sessionMode()
Specifies the mode of the session that will be created, eitherReadWrite
orReadOnly
.String
sessionModeAsString()
Specifies the mode of the session that will be created, eitherReadWrite
orReadOnly
.String
ssekmsEncryptionContext()
Specifies the Amazon Web Services KMS Encryption Context as an additional encryption context to use for object encryption.String
ssekmsKeyId()
If you specifyx-amz-server-side-encryption
withaws:kms
, you must specify thex-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.CreateSessionRequest.Builder
toBuilder()
String
toString()
Returns a string representation of this object.-
Methods inherited from class software.amazon.awssdk.awscore.AwsRequest
overrideConfiguration
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
sessionMode
public final SessionMode sessionMode()
Specifies the mode of the session that will be created, either
ReadWrite
orReadOnly
. By default, aReadWrite
session is created. AReadWrite
session is capable of executing all the Zonal endpoint API operations on a directory bucket. AReadOnly
session is constrained to execute the following Zonal endpoint API operations:GetObject
,HeadObject
,ListObjectsV2
,GetObjectAttributes
,ListParts
, andListMultipartUploads
.If the service returns an enum value that is not available in the current SDK version,
sessionMode
will returnSessionMode.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromsessionModeAsString()
.- Returns:
- Specifies the mode of the session that will be created, either
ReadWrite
orReadOnly
. By default, aReadWrite
session is created. AReadWrite
session is capable of executing all the Zonal endpoint API operations on a directory bucket. AReadOnly
session is constrained to execute the following Zonal endpoint API operations:GetObject
,HeadObject
,ListObjectsV2
,GetObjectAttributes
,ListParts
, andListMultipartUploads
. - See Also:
SessionMode
-
sessionModeAsString
public final String sessionModeAsString()
Specifies the mode of the session that will be created, either
ReadWrite
orReadOnly
. By default, aReadWrite
session is created. AReadWrite
session is capable of executing all the Zonal endpoint API operations on a directory bucket. AReadOnly
session is constrained to execute the following Zonal endpoint API operations:GetObject
,HeadObject
,ListObjectsV2
,GetObjectAttributes
,ListParts
, andListMultipartUploads
.If the service returns an enum value that is not available in the current SDK version,
sessionMode
will returnSessionMode.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromsessionModeAsString()
.- Returns:
- Specifies the mode of the session that will be created, either
ReadWrite
orReadOnly
. By default, aReadWrite
session is created. AReadWrite
session is capable of executing all the Zonal endpoint API operations on a directory bucket. AReadOnly
session is constrained to execute the following Zonal endpoint API operations:GetObject
,HeadObject
,ListObjectsV2
,GetObjectAttributes
,ListParts
, andListMultipartUploads
. - See Also:
SessionMode
-
bucket
public final String bucket()
The name of the bucket that you create a session for.
- Returns:
- The name of the bucket that you create a session for.
-
serverSideEncryption
public final ServerSideEncryption 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.If the service returns an enum value that is not available in the current SDK version,
serverSideEncryption
will returnServerSideEncryption.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromserverSideEncryptionAsString()
.- Returns:
- 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. - See Also:
ServerSideEncryption
-
serverSideEncryptionAsString
public final String serverSideEncryptionAsString()
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.If the service returns an enum value that is not available in the current SDK version,
serverSideEncryption
will returnServerSideEncryption.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromserverSideEncryptionAsString()
.- Returns:
- 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. - See Also:
ServerSideEncryption
-
ssekmsKeyId
public final String ssekmsKeyId()
If you specify
x-amz-server-side-encryption
withaws:kms
, you must specify thex-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 HTTP400 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.- Returns:
- If you specify
x-amz-server-side-encryption
withaws:kms
, you must specify thex-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 HTTP400 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.
-
ssekmsEncryptionContext
public final String ssekmsEncryptionContext()
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.
- Returns:
- 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.
-
bucketKeyEnabled
public final Boolean bucketKeyEnabled()
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
andPUT
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.- Returns:
- 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
andPUT
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.
-
toBuilder
public CreateSessionRequest.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<CreateSessionRequest.Builder,CreateSessionRequest>
- Specified by:
toBuilder
in classS3Request
-
builder
public static CreateSessionRequest.Builder builder()
-
serializableBuilderClass
public static Class<? extends CreateSessionRequest.Builder> serializableBuilderClass()
-
hashCode
public final int hashCode()
- Overrides:
hashCode
in classAwsRequest
-
equals
public final boolean equals(Object obj)
- Overrides:
equals
in classAwsRequest
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFields
in interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
getValueForField
public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
- Overrides:
getValueForField
in classSdkRequest
-
sdkFieldNameToField
public final Map<String,SdkField<?>> sdkFieldNameToField()
- Specified by:
sdkFieldNameToField
in interfaceSdkPojo
-
-