ServerPermissionSet Class

The ServerPermissionSet object represents a set of server permissions.

Inheritance Hierarchy

System.Object
  Microsoft.SqlServer.Management.Smo.PermissionSetBase
    Microsoft.SqlServer.Management.Smo.ServerPermissionSet

Namespace:  Microsoft.SqlServer.Management.Smo
Assembly:  Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)

Syntax

'Declaration
Public NotInheritable Class ServerPermissionSet _
    Inherits PermissionSetBase
'Usage
Dim instance As ServerPermissionSet
public sealed class ServerPermissionSet : PermissionSetBase
public ref class ServerPermissionSet sealed : public PermissionSetBase
[<SealedAttribute>]
type ServerPermissionSet =  
    class 
        inherit PermissionSetBase 
    end
public final class ServerPermissionSet extends PermissionSetBase

The ServerPermissionSet type exposes the following members.

Constructors

  Name Description
Public method ServerPermissionSet() Initializes a new instance of the ServerPermissionSet class.
Public method ServerPermissionSet(ServerPermission) Initializes a new instance of the ServerPermissionSet class based on the specified permission.
Public method ServerPermissionSet(array<ServerPermission[]) Initializes a new instance of the ServerPermissionSet class based on the specified set of permissions.
Public method ServerPermissionSet(ServerPermissionSet) Initializes a new instance of the ServerPermissionSet class based on the specified set of permissions.

Top

Properties

  Name Description
Public property AdministerBulkOperations Gets or sets the Boolean property value that specifies whether to include the ADMINISTER BULK OPERATIONS (ADBO) permission in the permission set. This permission lets the grantee perform bulk insert operations on the instance of SQL Server, such as importing data by using the bcp command, using the BULK INSERT statement, or using the INSERT…SELECT * FROM OPENROWSET(BULK…) statement.
Public property AlterAnyAvailabilityGroup Gets or sets the Boolean property value that specifies whether to include the ALTER ANY AVAILABILITY GROUP permission in the permission set. This permission lets the grantee create, alter, or drop any availability group on the instance of SQL Server.
Public property AlterAnyConnection Gets or sets the Boolean property value that specifies whether to include the ALTER ANY CONNECTION (ALCO) permission in the permission set. This permission lets the grantee create, alter, or drop any connection on the instance of SQL Server.
Public property AlterAnyCredential Gets or sets the Boolean property value that specifies whether to include the ALTER ANY CREDENTIAL (ALCD) permission in the permission set. This permission lets the grantee create, alter, or drop any credential on the instance of SQL Server.
Public property AlterAnyDatabase Gets or sets the Boolean property value that specifies whether to include the ALTER ANY DATABASE (ALDB) permission in the permission set. This permission lets the grantee create, alter, or drop any database on the instance of SQL Server.
Public property AlterAnyEndpoint Gets or sets the Boolean property value that specifies whether to include the ALTER ANY ENDPOINT (ALHE) permission in the permission set. This permission lets the grantee create, alter, or drop any endpoint on the instance of SQL Server.
Public property AlterAnyEventNotification Gets or sets the Boolean property value that specifies whether to include the ALTER ANY EVENT NOTIFICATION (ALES) permission in the permission set. This permission lets the grantee to create, alter, or drop any event notification on the instance of SQL Server.
Public property AlterAnyEventSession Gets or sets the Boolean property value that specifies whether to include the ALTER ANY EVENT SESSION permission in the permission set. This permission lets the grantee create, alter, or drop any event session on the instance of SQL Server.
Public property AlterAnyLinkedServer Gets or sets the Boolean property value that specifies whether to include the ALTER ANY LINKED SERVER (ALLS) permission in the permission set. This permission lets the grantee create, alter, or drop any linked server on the instance of SQL Server.
Public property AlterAnyLogin Gets or sets the Boolean property value that specifies whether to include the ALTER ANY LOGIN (ALLG) permission in the permission set. This permission lets the grantee create, alter, or drop any login on the instance of SQL Server.
Public property AlterAnyServerAudit Gets or sets the Boolean property value that specifies whether to include the ALTER ANY SERVER AUDIT permission in the permission set. This permission lets the grantee stop, start, or pause the instance of SQL Server.
Public property AlterAnyServerRole Gets or sets the Boolean property value that specifies whether to include the ALTER ANY SERVER ROLE permission in the permission set. This permission lets the grantee stop, start, or pause the instance of SQL Server.
Public property AlterResources Gets or sets the Boolean property value that specifies whether to include the ALTER RESOURCES (ALRS) permission in the permission set. This permission lets the grantee create, alter, or drop any resource on the instance of SQL Server.
Public property AlterServerState Gets or sets the Boolean property value that specifies whether to include the ALTER SERVER STATE (ALSS) permission in the permission set. This permission lets the grantee stop, start, or pause the instance of SQL Server.
Public property AlterSettings Gets or sets the Boolean property value that specifies whether to include the ALTER SETTINGS (ASLT) permission in the permission set. This permission lets the grantee alter any settings on the instance of SQL Server, such as the default database directory.
Public property AlterTrace Gets or sets the Boolean property value that specifies whether to include the ALTER TRACE (ALTR) permission in the permission set. This permission lets the grantee start, or stop trace runs or modify the trace options on the instance of SQL Server.
Public property AuthenticateServer Gets or sets the Boolean property value that specifies whether to include the AUTHENTICATE SERVER permission in the permission set. This permission lets the grantee authenticate with the instance of SQL Server.
Public property ConnectSql Gets or sets the Boolean property value that specifies whether to include the CONNECT SQL (COSQ) permission in the permission set. This permission lets the grantee connect to the instance of SQL Server.
Public property ControlServer Gets or sets the Boolean property value that specifies whether to include the CONTROL SERVER (CL) permission in the permission set. This permission lets the grantee grant any permission on any securable on the instance of SQL Server.
Public property CreateAnyDatabase Gets or sets the Boolean property value that specifies whether to include the CREATE ANY DATABASE (CRDB) permission in the permission set. This permission lets the grantee create, alter, or drop any database on the instance of SQL Server.
Public property CreateAvailabilityGroup Gets or sets the Boolean property value that specifies whether to include the CREATE AVAILABILITY GROUP permission in the permission set. This permission lets the grantee create, alter, or drop availability group on the instance of SQL Server.
Public property CreateDdlEventNotification Gets or sets the Boolean property value that specifies whether to include the CREATE DDL EVENT NOTIFICATION (CRDE) permission in the permission set. This permission lets the grantee create any DDL (Data Definition Language) event notification on the instance of SQL Server, such as the event that is raised when a database is created.
Public property CreateEndpoint Gets or sets the Boolean property value that specifies whether to include the CREATE ENDPOINT (CRHE) permission in the permission set. This permission lets the grantee create endpoints on the instance of SQL Server for SOAP, Transact-SQL, database mirroring, and Service Broker.
Public property CreateServerRole Gets or sets the Boolean property value that specifies whether to include the CREATE SERVER ROLE permission in the permission set. This permission lets the grantee create server role on the instance of SQL Server.
Public property CreateTraceEventNotification Gets or sets the Boolean property value that specifies whether to include the CREATE TRACE EVENT NOTIFICATION (CRTE) permission in the permission set. This permission lets the grantee create trace event notifications on the instance of SQL Server.
Public property ExternalAccessAssembly Gets or sets the Boolean property value that specifies whether to include the EXTERNAL ACCESS (XA) permission in the permission set. This permission lets the grantee access external system resources such as assembly files, networks, environmental variables, and the registry.
Public property Shutdown Gets or sets the Boolean property value that specifies whether to include the SHUTDOWN (SHDN) permission in the permission set. This permission lets the grantee stop the SQL Server service.
Public property UnsafeAssembly Gets or sets the Boolean property value that specifies whether to include the UNSAFE permission in the permission set. This permission allows the grantee unrestricted access to resources, both within and outside SQL Server, including calls to unmanaged code
Public property ViewAnyDatabase Gets or sets the Boolean property value that specifies whether to include the VIEW ANY DATABASE (VWDB) permission in the permission set. This permission lets the grantee view the definition (metadata) of any database on the instance of SQL Server.
Public property ViewAnyDefinition Gets or sets the Boolean property value that specifies whether to include the VIEW ANY DEFINITION (VWAD) permission in the permission set. This permission lets the grantee view the definition of any server that is securable on the instance of SQL Server.
Public property ViewServerState Gets or sets the Boolean property value that specifies whether to include the VIEW SERVER STATE (VWSS) permission in the permission set. This permission lets the grantee view the state of the instance of SQL Server.

Top

Methods

  Name Description
Public method Add(ServerPermission) Returns a server permission set after adding a new server permission to the referenced permission set.
Public methodStatic member Add(ServerPermissionSet, ServerPermission) Returns a server permission set after adding a new server permission to the specified permission set.
Public method Equals Determines whether the referenced server permission object is equal to a specified object. (Overrides PermissionSetBase.Equals(Object).)
Public method GetHashCode Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Overrides PermissionSetBase.GetHashCode().)
Public method GetType (Inherited from Object.)
Public method Remove Removes a permission from the permission set.
Public methodStatic member Subtract Returns a server permission set after subtracting a server permission from the specified permission set.
Public method ToString Returns the string value that represents the specified PermissionSetBase object. (Inherited from PermissionSetBase.)

Top

Operators

  Name Description
Public operatorStatic member Addition Creates a server permission set by performing an addition operation on a ServerPermission object and a ServerPermissionSet object.
Public operatorStatic member Equality Determines whether two objects are equal by performing an equality operation on two ServerPermissionSet objects.
Public operatorStatic member Inequality Determines whether two objects are unequal by performing an inequality operation on two ServerPermissionSet objects.
Public operatorStatic member Subtraction Creates a server permission set by performing a subtraction operation on a ServerPermission object and a ServerPermissionSet object.

Top

Remarks

Server permissions are required when you grant, deny, or revoke server-level permissions on an instance of SQL Server. The ServerPermissionSet object is required to specify the set of permissions that apply to the Grant method, the Deny method, and the Revoke method of the Server object.

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are safe for multithreaded operations. Any instance members are not guaranteed to be thread safe.

Examples

Granting, Revoking, and Denying Permissions

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

Microsoft.SqlServer.Management.Smo Namespace

Other Resources

Permissions (Database Engine)

sys.server_permissions (Transact-SQL)