Udostępnij za pośrednictwem


Metoda Deny (DatabasePermissionSet, String, Boolean)

Odrzuca określony zestaw uprawnień dla określonego grantee i innych użytkowników, którzy grantee przyznane określony zestaw uprawnień w bazie danych.

Przestrzeń nazw:  Microsoft.SqlServer.Management.Smo
Zestaw:  Microsoft.SqlServer.Smo (w Microsoft.SqlServer.Smo.dll)

Syntax

'Deklaracja
Public Sub Deny ( _
    permission As DatabasePermissionSet, _
    granteeName As String, _
    cascade As Boolean _
)
'Użycie
Dim instance As Database
Dim permission As DatabasePermissionSet
Dim granteeName As String
Dim cascade As Boolean

instance.Deny(permission, granteeName, _
    cascade)
public void Deny(
    DatabasePermissionSet permission,
    string granteeName,
    bool cascade
)
public:
void Deny(
    DatabasePermissionSet^ permission, 
    String^ granteeName, 
    bool cascade
)
member Deny : 
        permission:DatabasePermissionSet * 
        granteeName:string * 
        cascade:bool -> unit 
public function Deny(
    permission : DatabasePermissionSet, 
    granteeName : String, 
    cascade : boolean
)

Parameters

  • granteeName
    Typ: System. . :: . .String
    A String wartość określająca grantee niedozwolone określony zestaw uprawnień do bazy danych.
  • cascade
    Typ: System. . :: . .Boolean
    A Boolean właściwość, która określa, czy użytkownicy, którym grantee przyznane określony zestaw uprawnień, są również dostępu do określonego zestawu uprawnień do bazy danych.
    Jeśli True, grantee i użytkowników, których przyznana określony zestaw uprawnień są wszystkie grantee odmowa określonego zestawu uprawnień. Jeśli False, tylko grantee odmowa określonego zestaw uprawnień.

Przykłady

W przykładzie pokazano, jak używać Odmów metoda uprawnienia serwera.Metoda jest używana w taki sam sposób, z uprawnieniami do bazy danych.

VB

'Connect to the local, default instance of SQL Server.
Dim svr As Server
svr = New Server()
'Define a ServerPermissionSet that contains permission to Create Endpoint and Alter Any Endpoint.
Dim sps As ServerPermissionSet
sps = New ServerPermissionSet(ServerPermission.CreateEndpoint)
sps.Add(ServerPermission.AlterAnyEndpoint)
'This sample assumes that the grantee already has permission to Create Endpoints. 
'Enumerate and display the server permissions in the set for the grantee specified in the vGrantee string variable.
Dim spis As ServerPermissionInfo()
spis = svr.EnumServerPermissions(vGrantee, sps)
Dim spi As ServerPermissionInfo
Console.WriteLine("=================Before revoke===========================")
For Each spi In spis
    Console.WriteLine(spi.Grantee & " has " & spi.PermissionType.ToString & " permission.")
Next
Console.WriteLine(" ")
'Remove a permission from the set.
sps.Remove(ServerPermission.CreateEndpoint)
'Revoke the create endpoint permission from the grantee.
svr.Revoke(sps, vGrantee)
'Enumerate and display the server permissions in the set for the grantee specified in the vGrantee string variable.
spis = svr.EnumServerPermissions(vGrantee, sps)
Console.WriteLine("=================After revoke============================")
For Each spi In spis
    Console.WriteLine(spi.Grantee & " has " & spi.PermissionType.ToString & " permission.")
Next
Console.WriteLine(" ")
'Grant the Create Endpoint permission to the grantee.
svr.Grant(sps, vGrantee)
'Enumerate and display the server permissions in the set for the grantee specified in the vGrantee string variable.
spis = svr.EnumServerPermissions(vGrantee, sps)
Console.WriteLine("=================After grant=============================")
For Each spi In spis
    Console.WriteLine(spi.Grantee & " has " & spi.PermissionType.ToString & " permission.")
Next
Console.WriteLine("")

PowerShell

$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$arg = [Microsoft.SqlServer.Management.Smo.ServerPermission]::CreateEndpoint

$sps = new-object Microsoft.SqlServer.Management.Smo.ServerPermissionSet([Microsoft.SqlServer.Management.Smo.ServerPermission]::CreateEndpoint)
$sps.Add([Microsoft.SqlServer.Management.Smo.ServerPermission]::AlterAnyEndpoint)
$spis = $srv.EnumServerPermissions("vGrantee", $sps)
Write-Host "=================Before revoke==========================="
Foreach ($spi In $spis)
{
   Write-Host $spi.Grantee "has" $spi.PermissionType " permission."
}
Write-Host " "
$sps.Remove([Microsoft.SqlServer.Management.Smo.ServerPermission]::CreateEndpoint)