public static interface S3EncryptionSettings.Builder extends SdkPojo, CopyableBuilder<S3EncryptionSettings.Builder,S3EncryptionSettings>
Modifier and Type | Method and Description |
---|---|
S3EncryptionSettings.Builder |
encryptionType(S3ServerSideEncryptionType encryptionType)
Specify how you want your data keys managed.
|
S3EncryptionSettings.Builder |
encryptionType(String encryptionType)
Specify how you want your data keys managed.
|
S3EncryptionSettings.Builder |
kmsEncryptionContext(String kmsEncryptionContext)
Optionally, specify the encryption context that you want to use alongside your KMS key.
|
S3EncryptionSettings.Builder |
kmsKeyArn(String kmsKeyArn)
Optionally, specify the customer master key (CMK) that you want to use to encrypt the data key that AWS uses
to encrypt your output content.
|
equalsBySdkFields, sdkFields
copy
applyMutation, build
S3EncryptionSettings.Builder encryptionType(String encryptionType)
encryptionType
- Specify how you want your data keys managed. AWS uses data keys to encrypt your content. AWS also
encrypts the data keys themselves, using a customer master key (CMK), and then stores the encrypted
data keys alongside your encrypted content. Use this setting to specify which AWS service manages the
CMK. For simplest set up, choose Amazon S3 (SERVER_SIDE_ENCRYPTION_S3). If you want your master key to
be managed by AWS Key Management Service (KMS), choose AWS KMS (SERVER_SIDE_ENCRYPTION_KMS). By
default, when you choose AWS KMS, KMS uses the AWS managed customer master key (CMK) associated with
Amazon S3 to encrypt your data keys. You can optionally choose to specify a different, customer
managed CMK. Do so by specifying the Amazon Resource Name (ARN) of the key for the setting KMS ARN
(kmsKeyArn).S3ServerSideEncryptionType
,
S3ServerSideEncryptionType
S3EncryptionSettings.Builder encryptionType(S3ServerSideEncryptionType encryptionType)
encryptionType
- Specify how you want your data keys managed. AWS uses data keys to encrypt your content. AWS also
encrypts the data keys themselves, using a customer master key (CMK), and then stores the encrypted
data keys alongside your encrypted content. Use this setting to specify which AWS service manages the
CMK. For simplest set up, choose Amazon S3 (SERVER_SIDE_ENCRYPTION_S3). If you want your master key to
be managed by AWS Key Management Service (KMS), choose AWS KMS (SERVER_SIDE_ENCRYPTION_KMS). By
default, when you choose AWS KMS, KMS uses the AWS managed customer master key (CMK) associated with
Amazon S3 to encrypt your data keys. You can optionally choose to specify a different, customer
managed CMK. Do so by specifying the Amazon Resource Name (ARN) of the key for the setting KMS ARN
(kmsKeyArn).S3ServerSideEncryptionType
,
S3ServerSideEncryptionType
S3EncryptionSettings.Builder kmsEncryptionContext(String kmsEncryptionContext)
kmsEncryptionContext
- Optionally, specify the encryption context that you want to use alongside your KMS key. AWS KMS uses
this encryption context as additional authenticated data (AAD) to support authenticated encryption.
This value must be a base64-encoded UTF-8 string holding JSON which represents a string-string map. To
use this setting, you must also set Server-side encryption (S3ServerSideEncryptionType) to AWS KMS
(SERVER_SIDE_ENCRYPTION_KMS). For more information about encryption context, see:
https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context.S3EncryptionSettings.Builder kmsKeyArn(String kmsKeyArn)
kmsKeyArn
- Optionally, specify the customer master key (CMK) that you want to use to encrypt the data key that
AWS uses to encrypt your output content. Enter the Amazon Resource Name (ARN) of the CMK. To use this
setting, you must also set Server-side encryption (S3ServerSideEncryptionType) to AWS KMS
(SERVER_SIDE_ENCRYPTION_KMS). If you set Server-side encryption to AWS KMS but don't specify a CMK
here, AWS uses the AWS managed CMK associated with Amazon S3.Copyright © 2022. All rights reserved.