Table of Contents

Class SecuritySchema.ServerPermission

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

sys.server_permissions (Transact-SQL)

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

Returns one row for each server-level permission.


See sys.server_permissions.

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

Properties

Class

Identifies class of thing on which permission exists.

100 = Server

101 = Server-principal

105 = Endpoint

108 = Availability Group

[Column("class")]
[NotNull]
public byte Class { get; set; }

Property Value

byte

ClassDesc

Description of class on which permission exists. One of the following values:

SERVER

SERVER_PRINCIPAL

ENDPOINT

AVAILABILITY GROUP

[Column("class_desc")]
[Nullable]
public string? ClassDesc { get; set; }

Property Value

string

GranteePrincipalID

Server-principal-ID to which the permissions are granted.

[Column("grantee_principal_id")]
[NotNull]
public int GranteePrincipalID { get; set; }

Property Value

int

GrantorPrincipalID

Server-principal-ID of the grantor of these permissions.

[Column("grantor_principal_id")]
[NotNull]
public int GrantorPrincipalID { get; set; }

Property Value

int

MajorID

ID of the securable on which permission exists, interpreted according to class. For most, this is just the kind of ID that applies to what the class represents. Interpretation for non-standard is as follows:

100 = Always 0

[Column("major_id")]
[NotNull]
public int MajorID { get; set; }

Property Value

int

MinorID

Secondary ID of thing on which permission exists, interpreted according to class.

[Column("minor_id")]
[NotNull]
public int MinorID { get; set; }

Property Value

int

PermissionName

Permission name.

[Column("permission_name")]
[Nullable]
public string? PermissionName { get; set; }

Property Value

string

State

Permission state:

D = Deny

R = Revoke

G = Grant

W = Grant With Grant option

[Column("state")]
[NotNull]
public string State { get; set; }

Property Value

string

StateDesc

Description of permission state:

DENY

REVOKE

GRANT

GRANT_WITH_GRANT_OPTION

[Column("state_desc")]
[Nullable]
public string? StateDesc { get; set; }

Property Value

string

TypeColumn

Server permission type. For a list of permission types, see the next table.

[Column("type")]
[NotNull]
public string TypeColumn { get; set; }

Property Value

string