Table of Contents

Class SecuritySchema.SymmetricKey

Namespace
LinqToDB.Tools.DataProvider.SqlServer.Schemas
Assembly
linq2db.Tools.dll

sys.symmetric_keys (Transact-SQL)

Applies to: √ SQL Server (all supported versions) √ Azure SQL Database √ Azure SQL Managed Instance √ Azure Synapse Analytics √ Analytics Platform System (PDW)

Returns one row for every symmetric key created with the CREATE SYMMETRIC KEY statement.


See sys.symmetric_keys.

[Table(Schema = "sys", Name = "symmetric_keys", IsView = true)]
public class SecuritySchema.SymmetricKey
Inheritance
SecuritySchema.SymmetricKey
Extension Methods

Properties

AlgorithmDesc

Description of the algorithm used with the key:

RC2

RC4

DES

Triple_DES

TRIPLE_DES_3KEY

DESX

AES_128

AES_192

AES_256

NULL (Extensible Key Management algorithms only)

[Column("algorithm_desc")]
[Nullable]
public string? AlgorithmDesc { get; set; }

Property Value

string

CreateDate

Date the key was created.

[Column("create_date")]
[NotNull]
public DateTime CreateDate { get; set; }

Property Value

DateTime

CryptographicProviderAlgid

Algorithm ID for the cryptographic provider. For non-Extensible Key Management keys this value will be NULL.

[Column("cryptographic_provider_algid")]
[Nullable]
public object? CryptographicProviderAlgid { get; set; }

Property Value

object

CryptographicProviderGuid

GUID for the cryptographic provider. For non-Extensible Key Management keys this value will be NULL.

[Column("cryptographic_provider_guid")]
[Nullable]
public Guid? CryptographicProviderGuid { get; set; }

Property Value

Guid?

KeyAlgorithm

Algorithm used with the key:

R2 = RC2

R4 = RC4

D = DES

D3 = Triple DES

DT = TRIPLE_DES_3KEY

DX = DESX

A1 = AES 128

A2 = AES 192

A3 = AES 256

NA = EKM Key

[Column("key_algorithm")]
[NotNull]
public string KeyAlgorithm { get; set; }

Property Value

string

KeyGuid

Globally unique identifier (GUID) associated with the key. It is auto-generated for persisted keys. GUIDs for temporary keys are derived from the user-supplied pass phrase.

[Column("key_guid")]
[Nullable]
public Guid? KeyGuid { get; set; }

Property Value

Guid?

KeyLength

Length of the key in bits.

[Column("key_length")]
[NotNull]
public int KeyLength { get; set; }

Property Value

int

KeyThumbprint

SHA-1 hash of the key. The hash is globally unique. For non-Extensible Key Management keys this value will be NULL.

[Column("key_thumbprint")]
[Nullable]
public object? KeyThumbprint { get; set; }

Property Value

object

ModifyDate

Date the key was modified.

[Column("modify_date")]
[NotNull]
public DateTime ModifyDate { get; set; }

Property Value

DateTime

Name

Name of the key. Unique within the database.

[Column("name")]
[NotNull]
public string Name { get; set; }

Property Value

string

PrincipalID

ID of the database principal who owns the key.

[Column("principal_id")]
[Nullable]
public int? PrincipalID { get; set; }

Property Value

int?

ProviderType

Type of cryptographic provider:

CRYPTOGRAPHIC PROVIDER = Extensible Key Management keys

NULL = Non-Extensible Key Management keys

[Column("provider_type")]
[Nullable]
public string? ProviderType { get; set; }

Property Value

string

SymmetricKeyID

ID of the key. Unique within the database.

[Column("symmetric_key_id")]
[NotNull]
public int SymmetricKeyID { get; set; }

Property Value

int