Table of Contents

Class SSESpecification

Namespace
DynaSharp.Requests
Assembly
DynaSharp.dll

The server-side encryption of a table, in CreateTableRequest and UpdateTableRequest.

public sealed record SSESpecification : IEquatable<SSESpecification>
Inheritance
SSESpecification
Implements
Inherited Members

Remarks

Every table is encrypted at rest. Without this specification the table uses a key that DynamoDB owns, at no charge. With it, the table is encrypted with an AWS KMS key in your account, which costs a KMS request per access and stops the table from working if the key becomes inaccessible (see InaccessibleEncryptionCredentials).

An existing table can switch between the key that DynamoDB owns, the AWS managed key and a customer managed key at any time with UpdateTable.

Constructors

SSESpecification()

public SSESpecification()

Properties

Enabled

Gets a value indicating whether the table is encrypted with a KMS key (true: the AWS managed key, or the key of KMSMasterKeyId) or with the key that DynamoDB owns (false, the default). CreateTable sends false as nothing, which means the same; UpdateTable always sends it.

public bool Enabled { get; init; }

Property Value

bool

KMSMasterKeyId

Gets the KMS key to use, as a key id, key ARN, alias name or alias ARN, for a customer managed key; null uses the AWS managed key alias/aws/dynamodb. The key must be in the region of the table.

public string? KMSMasterKeyId { get; init; }

Property Value

string

SSEType

Gets the type of encryption. Unspecified (the default) sends nothing, and DynamoDB uses KMS.

public SSEType SSEType { get; init; }

Property Value

SSEType

Methods

Equals(SSESpecification?)

public bool Equals(SSESpecification? other)

Parameters

other SSESpecification

Returns

bool

Equals(object?)

public override bool Equals(object? obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

ToString()

public override string ToString()

Returns

string

Operators

operator ==(SSESpecification?, SSESpecification?)

public static bool operator ==(SSESpecification? left, SSESpecification? right)

Parameters

left SSESpecification
right SSESpecification

Returns

bool

operator !=(SSESpecification?, SSESpecification?)

public static bool operator !=(SSESpecification? left, SSESpecification? right)

Parameters

left SSESpecification
right SSESpecification

Returns

bool