Freigeben über


Deny-Methode (ObjectPermissionSet, String[], Boolean)

Verweigert den angegebenen Empfängern die vorliegende Berechtigung für die Tabelle.

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

Syntax

'Declaration
Public Sub Deny ( _
    permission As ObjectPermissionSet, _
    granteeNames As String(), _
    cascade As Boolean _
)
'Usage
Dim instance As Table
Dim permission As ObjectPermissionSet
Dim granteeNames As String()
Dim cascade As Boolean

instance.Deny(permission, granteeNames, _
    cascade)
public void Deny(
    ObjectPermissionSet permission,
    string[] granteeNames,
    bool cascade
)
public:
virtual void Deny(
    ObjectPermissionSet^ permission, 
    array<String^>^ granteeNames, 
    bool cascade
) sealed
abstract Deny : 
        permission:ObjectPermissionSet * 
        granteeNames:string[] * 
        cascade:bool -> unit 
override Deny : 
        permission:ObjectPermissionSet * 
        granteeNames:string[] * 
        cascade:bool -> unit 
public final function Deny(
    permission : ObjectPermissionSet, 
    granteeNames : String[], 
    cascade : boolean
)

Parameter

  • granteeNames
    Typ: array<System. . :: . .String> [] () [] []
    Ein String-Array, das eine Liste von Empfängern angibt, denen der angegebene Berechtigungssatz verweigert werden soll.
  • cascade
    Typ: System. . :: . .Boolean
    Eine Boolean-Eigenschaft, die angibt, ob Benutzern, denen der Empfänger den angegebenen Berechtigungssatz gewährt hat, ebenfalls der Zugriff auf den angegebenen Berechtigungssatz für die Tabelle verweigert wird.
    True gibt an, dass dem Empfänger und den Benutzern, denen der Empfänger Zugriff auf den angegebenen Berechtigungssatz gewährt hat, der angegebene Berechtigungssatz verweigert wird.
    False gibt an, dass nur dem Empfänger der angegebene Berechtigungssatz verweigert wird.

Implementiert

IObjectPermission. . :: . .Deny(ObjectPermissionSet, array<String> [] () [] [], Boolean)

Beispiele

The following code example shows how to grant guest accounts permission to select table elements, and then revoke the permission by usuing the Deny method. The grantees account array is a placeholder for any array of defined user accounts.

The following database schema is used for this snippet.

//CREATE DATABASE MYTESTDB;
//GO

//USE MYTESTDB;
//GO

//CREATE TABLE TABLE1(
//    id int,
//    name varchar(32)
//);
//GO

C#

Server srv = new Server("(local)");
Database db = srv.Databases["MYTESTDB"];

Table tb = db.Tables[0];

ObjectPermissionSet objPermissionSet = new ObjectPermissionSet(ObjectPermission.Select);
objPermissionSet.Select = true;
tb.Grant(objPermissionSet, grantees);
tb.Deny(objPermissionSet, grantees, true);

Powershell

$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database
$db = $srv.Databases.Item("MYTESTDB")
$tb = $db.Tables[0]

$objPermissionSet = new-object Microsoft.SqlServer.Management.Smo.ObjectPermissionSet([Microsoft.SqlServer.Management.Smo.ObjectPermission]::Select)
$objPermissionSet.Select = $TRUE
$tb.Grant($objPermissionSet, grantees)
$tb.Deny($objPermissionSet, grantees, $TRUE)