OBS allows you to encrypt objects with server-side encryption so that the objects can be securely stored in OBS.
When you upload an object to a bucket with server-side encryption disabled, you can separately configure server-side encryption for the object. If the bucket has server-side encryption enabled, the object you upload inherits encryption from the bucket by default. You can also configure new encryption for the object.
In the region where OBS is deployed, the KMS Administrator permission has been added to the user group. For details about how to add permissions, see the IAM User Guide.
A custom KMS Policy with a minimum required set of allowed actions for users to be able to upload and download objects with Server-Side Encryption is:
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "kms:dek:crypto", "kms:dek:create", "kms:cmk:get", "kms:cmk:list", "kms:cmk:generate", "kms:cmk:crypto" ] } ] }
If the bucket has server-side encryption enabled, any object you upload will inherit the KMS encryption from the bucket by default.
After KMS encryption is selected, obs/default is selected by default as the key for the encryption. You can also click Create KMS Key to switch to the KMS management console and create a customer master key. Then go back to OBS Console and select the key from the drop-down list.
After the object is uploaded, you can view its encryption status on its details page.