# QueueEncryption

What kind of encryption to apply to this queue.

- Source: [`aws-sqs/lib/queue-base.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0/packages/aws-cdk-lib/aws-sqs/lib/queue-base.ts#L363)
- Type last changed: v2.45.0 · 6 Oct 2022

## Example

```ts
// Use managed key
new sqs.Queue(this, 'Queue', {
  encryption: sqs.QueueEncryption.KMS_MANAGED,
});

// Use custom key
const myKey = new kms.Key(this, 'Key');

new sqs.Queue(this, 'Queue', {
  encryption: sqs.QueueEncryption.KMS,
  encryptionMasterKey: myKey,
});

// Use SQS managed server side encryption (SSE-SQS)
new sqs.Queue(this, 'Queue', {
  encryption: sqs.QueueEncryption.SQS_MANAGED,
});

// Unencrypted queue
new sqs.Queue(this, 'Queue', {
  encryption: sqs.QueueEncryption.UNENCRYPTED,
});
```

## Members

| Member | Description |
| --- | --- |
| `UNENCRYPTED` | Messages in the queue are not encrypted. |
| `KMS_MANAGED` | Server-side KMS encryption with a KMS key managed by SQS. |
| `KMS` | Server-side encryption with a KMS key managed by the user. |
| `SQS_MANAGED` | Server-side encryption key managed by SQS (SSE-SQS). |

## Referenced by

- [`IQueue`](/v2/docs/aws-cdk-lib.aws_sqs.IQueue).encryptionType
- [`Queue`](/v2/docs/aws-cdk-lib.aws_sqs.Queue).encryptionType
- [`QueueBase`](/v2/docs/aws-cdk-lib.aws_sqs.QueueBase).encryptionType
- [`QueueProps`](/v2/docs/aws-cdk-lib.aws_sqs.QueueProps).encryption
