Metoda Table.Deny (ObjectPermissionSet, String, array<String[])
Odrzuca określony zestaw uprawnień do grantee w określonych kolumnach tabela.
Przestrzeń nazw: Microsoft.SqlServer.Management.Smo
Zestaw: Microsoft.SqlServer.Smo (w Microsoft.SqlServer.Smo.dll)
Składnia
'Deklaracja
Public Sub Deny ( _
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.Deny(permission, granteeName, _
columnNames)
public void Deny(
ObjectPermissionSet permission,
string granteeName,
string[] columnNames
)
public:
virtual void Deny(
ObjectPermissionSet^ permission,
String^ granteeName,
array<String^>^ columnNames
) sealed
abstract Deny :
permission:ObjectPermissionSet *
granteeName:string *
columnNames:string[] -> unit
override Deny :
permission:ObjectPermissionSet *
granteeName:string *
columnNames:string[] -> unit
public final function Deny(
permission : ObjectPermissionSet,
granteeName : String,
columnNames : String[]
)
Parametry
- permission
Typ: Microsoft.SqlServer.Management.Smo.ObjectPermissionSet
ObjectPermissionSet Wartość obiektu, który określa zestaw uprawnień.
- granteeName
Typ: System.String
A String wartość określająca grantee niedozwolone określonego zestaw uprawnień.
- columnNames
Typ: array<System.String[]
A String Tablica wartości, która określa listę kolumn, dla których udzielono.
Implementacje
IColumnPermission.Deny(ObjectPermissionSet, String, array<String[])
Przykłady
Poniższy przykład kodu pokazuje jak udzielić uprawnień do Zaznaczanie elementów tabela, a następnie odwołać uprawnienia Odmów metoda konta Gość.
Następującego schematu 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];
ObjectPermissionSet objPermissionSet = new ObjectPermissionSet(ObjectPermission.Select);
objPermissionSet.Select = true;
tb.Grant(objPermissionSet, "Guest");
String[] tbColNames = new string[tb.Columns.Count];
int n = 0;
foreach (Column i in tb.Columns)
{
tbColNames[n] = i.Name;
n++;
}
tb.Deny(objPermissionSet, "Guest", tbColNames);
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, "Guest")
$tbColNames = @()
foreach ($c in $tb.Columns)
{
$tbColNames = $tbColNames + $c.Name
Write-Host $tbColNames
}
$tb.Deny($objPermissionSet, "Guest", $tbColNames)
Zobacz także