AWS::ECR::Repository EncryptionConfiguration - Amazon CloudFormation
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

AWS::ECR::Repository EncryptionConfiguration

The encryption configuration for the repository. This determines how the contents of your repository are encrypted at rest.

By default, when no encryption configuration is set or the AES256 encryption type is used, Amazon ECR uses server-side encryption with Amazon S3-managed encryption keys which encrypts your data at rest using an AES256 encryption algorithm. This does not require any action on your part.

For more control over the encryption of the contents of your repository, you can use server-side encryption with Amazon Key Management Service key stored in Amazon Key Management Service (Amazon KMS) to encrypt your images. For more information, see Amazon ECR encryption at rest in the Amazon Elastic Container Registry User Guide.

Syntax

To declare this entity in your Amazon CloudFormation template, use the following syntax:

JSON

{ "EncryptionType" : String, "KmsKey" : String }

YAML

EncryptionType: String KmsKey: String

Properties

EncryptionType

The encryption type to use.

If you use the KMS encryption type, the contents of the repository will be encrypted using server-side encryption with Amazon Key Management Service key stored in Amazon KMS. When you use Amazon KMS to encrypt your data, you can either use the default Amazon managed Amazon KMS key for Amazon ECR, or specify your own Amazon KMS key, which you already created.

If you use the KMS_DSSE encryption type, the contents of the repository will be encrypted with two layers of encryption using server-side encryption with the Amazon KMS Management Service key stored in Amazon KMS. Similar to the KMS encryption type, you can either use the default Amazon managed Amazon KMS key for Amazon ECR, or specify your own Amazon KMS key, which you've already created.

If you use the AES256 encryption type, Amazon ECR uses server-side encryption with Amazon S3-managed encryption keys which encrypts the images in the repository using an AES256 encryption algorithm.

For more information, see Amazon ECR encryption at rest in the Amazon Elastic Container Registry User Guide.

Required: Yes

Type: String

Allowed values: AES256 | KMS | KMS_DSSE

Update requires: Replacement

KmsKey

If you use the KMS encryption type, specify the Amazon KMS key to use for encryption. The alias, key ID, or full ARN of the Amazon KMS key can be specified. The key must exist in the same Region as the repository. If no key is specified, the default Amazon managed Amazon KMS key for Amazon ECR will be used.

Required: No

Type: String

Minimum: 1

Maximum: 2048

Update requires: Replacement