Metoda Grant (ObjectPermissionSet, String, String[])
Dotacje dostęp do uprawnień określonych w określonych kolumnach grantee określony w określonych kolumnach tabela.
Przestrzeń nazw: Microsoft.SqlServer.Management.Smo
Zestaw: Microsoft.SqlServer.Smo (w Microsoft.SqlServer.Smo.dll)
Syntax
'Deklaracja
Public Sub Grant ( _
permission As ObjectPermissionSet, _
granteeName As String, _
columnNames As String() _
)
'Użycie
Dim instance As Table
Dim permission As ObjectPermissionSet
Dim granteeName As String
Dim columnNames As String()
instance.Grant(permission, granteeName, _
columnNames)
public void Grant(
ObjectPermissionSet permission,
string granteeName,
string[] columnNames
)
public:
virtual void Grant(
ObjectPermissionSet^ permission,
String^ granteeName,
array<String^>^ columnNames
) sealed
abstract Grant :
permission:ObjectPermissionSet *
granteeName:string *
columnNames:string[] -> unit
override Grant :
permission:ObjectPermissionSet *
granteeName:string *
columnNames:string[] -> unit
public final function Grant(
permission : ObjectPermissionSet,
granteeName : String,
columnNames : String[]
)
Parameters
- permission
Typ: Microsoft.SqlServer.Management.Smo. . :: . .ObjectPermissionSet
ObjectPermissionSet Obiekt, który określa zestaw uprawnień.
- granteeName
Typ: System. . :: . .String
A String wartość określająca grantee, aby uzyskać dostęp do zestaw uprawnień.
- columnNames
Typ: array<System. . :: . .String> [] () [] []
A String Tablica wartości, która określa listę kolumn, do której zestaw uprawnień jest przyznawana.
Implementacje
IColumnPermission. . :: . .Grant(ObjectPermissionSet, String, array<String> [] () [] [])
Przykłady
Poniższy przykład kodu pokazuje jak udzielić uprawnień konta grantee na zaznaczanie elementów tabela drugiej kolumna tabela.grantee Konto jest symbolem zastępczym dla dowolnego konta użytkownika zdefiniowane.
Następującego schemat bazy danych jest używany dla tej wstawki.
//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];
String[] col = new String[1];
col[0] = tb.Columns[0].Name;
col[1] = tb.Columns[1].Name
ObjectPermissionSet objPermissionSet = new ObjectPermissionSet(ObjectPermission.Select);
objPermissionSet.Select = true;
tb.Grant(objPermissionSet, grantee, col[]);
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]
$col = @($tb.Columns[0].Name, $tb.Columns[1].Name)
$objPermissionSet = new-object Microsoft.SqlServer.Management.Smo.ObjectPermissionSet([Microsoft.SqlServer.Management.Smo.ObjectPermission]::Select)
$objPermissionSet.Select = $TRUE
$tb.Grant($objPermissionSet, grantee, $col)
Zobacz także