Updated on 2024-01-16 GMT+08:00

Server-Side Encryption APIs (SDK for Java)

If you have any questions during development, post them on the Issues page of GitHub.

The following table lists APIs related to server-side encryption:

Method in OBS Java SDK

Description

Supported Encryption Type

ObsClient.putObject

Sets the encryption algorithm and key during object upload to enable server-side encryption.

SSE-KMS

SSE-C

SSE-OBS

ObsClient.getObject

Users with the KMS Administrator permission can directly download objects encrypted using KMS. During a download, the backend decrypts KMS-encrypted objects before returning them. (SSE-KMS)

Sets the decryption algorithm and key during object download to decrypt the object. (SSE-C)

SSE-KMS

SSE-C

SSE-OBS

ObsClient.copyObject

  1. Sets the decryption algorithm and key for decrypting the source object during object copy.
  2. Sets the encryption algorithm and key during object copy to enable the encryption algorithm for the target object.

SSE-KMS

SSE-C

ObsClient.getObjectMetadata

Sets the decryption algorithm and key when obtaining the object metadata to decrypt the object.

SSE-C

SSE-OBS

ObsClient.initiateMultipartUpload

Sets the encryption algorithm and key when initializing a multipart upload to enable server-side encryption for the final object generated.

SSE-KMS

SSE-C

ObsClient.uploadPart

Sets the encryption algorithm and key during multipart upload to enable server-side encryption for parts.

SSE-C

ObsClient.copyPart

  1. Sets the decryption algorithm and key for decrypting the source object during multipart copy.
  2. Sets the encryption algorithm and key during multipart copy to enable the encryption algorithm for the target part.

SSE-C