Метод Grant (ObjectPermissionSet, String[], Boolean)

Предоставляет заданным участникам доступ к указанному разрешению таблицы и возможность предоставлять доступ другим пользователям.

Пространство имен:  Microsoft.SqlServer.Management.Smo
Сборка:  Microsoft.SqlServer.Smo (в Microsoft.SqlServer.Smo.dll)

Синтаксис

'Декларация
Public Sub Grant ( _
    permission As ObjectPermissionSet, _
    granteeNames As String(), _
    grantGrant As Boolean _
)
'Применение
Dim instance As Table
Dim permission As ObjectPermissionSet
Dim granteeNames As String()
Dim grantGrant As Boolean

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

Параметры

  • granteeNames
    Тип: array<System. . :: . .String> [] () [] []
    Массив типа String, содержащий список получателей прав, которым будет отказано в доступе к набору разрешений.
  • grantGrant
    Тип: System. . :: . .Boolean
    Свойство Boolean указывает, предоставлена ли получателю прав возможность предоставления другим пользователям определенного набора разрешений на таблицу.
    При значении True получатель прав получает возможность предоставления определенного набора разрешений на таблицу другим пользователям. В противном случае — значение False.

Реализует

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

Примеры

The following code example shows how to grant a grantee account permission to select table elements of the second table column. The grantee account is a placeholder for any 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, 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, $TRUE)