

# S3UpdateObjectEncryptionSSEKMS
<a name="API_control_S3UpdateObjectEncryptionSSEKMS"></a>

If `SSEKMS` is specified for `UpdateObjectEncryption`, this data type specifies the Amazon KMS key Amazon Resource Name (ARN) to use and whether to use an S3 Bucket Key for server-side encryption using Amazon Key Management Service (Amazon KMS) keys (SSE-KMS).

## Contents
<a name="API_control_S3UpdateObjectEncryptionSSEKMS_Contents"></a>

 ** KMSKeyArn **   <a name="AmazonS3-Type-control_S3UpdateObjectEncryptionSSEKMS-KMSKeyArn"></a>
Specifies the Amazon KMS key Amazon Resource Name (ARN) to use for the updated server-side encryption type. Required if `UpdateObjectEncryption` specifies `SSEKMS`.  
Type: String  
Length Constraints: Minimum length of 20. Maximum length of 2048.  
Pattern: `arn:aws[a-zA-Z0-9-]*:kms:[a-z0-9-]+:[0-9]{12}:key/[a-zA-Z0-9-]+`   
Required: Yes

 ** BucketKeyEnabled **   <a name="AmazonS3-Type-control_S3UpdateObjectEncryptionSSEKMS-BucketKeyEnabled"></a>
Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using Amazon Key Management Service (Amazon KMS) keys (SSE-KMS). If this value isn't specified, it defaults to `false`. Setting this value to `true` causes Amazon S3 to use an S3 Bucket Key for update object encryption with SSE-KMS.  
Type: Boolean  
Required: No

## See Also
<a name="API_control_S3UpdateObjectEncryptionSSEKMS_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/s3control-2018-08-20/S3UpdateObjectEncryptionSSEKMS) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/s3control-2018-08-20/S3UpdateObjectEncryptionSSEKMS) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/s3control-2018-08-20/S3UpdateObjectEncryptionSSEKMS) 