DENY Sunucu Birincil İzinleri (Transact-SQL)

Şunlar için geçerlidir: SQL Server Azure SQL Yönetilen Örneği

SQL Server girişinde verilen izinleri reddediyor.

Transact-SQL söz dizimi kuralları

Syntax

DENY permission [ ,...n ] }   
    ON   
    { [ LOGIN :: SQL_Server_login ]  
      | [ SERVER ROLE :: server_role ] }   
    TO <server_principal> [ ,...n ]  
    [ CASCADE ]  
    [ AS SQL_Server_login ]   
  
<server_principal> ::=   
    SQL_Server_login  
    | SQL_Server_login_from_Windows_login   
    | SQL_Server_login_from_certificate   
    | SQL_Server_login_from_AsymKey   
    | server_role  

Arguments

permission
SQL Server girişinde reddedilebilecek bir izni belirtir. İzinlerin listesi için bu konunun devamındaki Açıklamalar bölümüne bakın.

LOGIN ::SQL_Server_login
İzninin reddedildiği SQL Server girişini belirtir. Kapsam niteleyicisi (::) gereklidir.

SERVER ROLE ::server_role
İznin reddedildiği sunucu rolünü belirtir. Kapsam niteleyicisi (::) gereklidir.

TO <server_principal>
İznin verildiği SQL Server giriş veya sunucu rolünü belirtir.

TO SQL_Server_login
İznin reddedildiği SQL Server girişini belirtir.

SQL_Server_login
SQL Server oturum açma bilgilerinin adını belirtir.

SQL_Server_login_from_Windows_login
Windows oturumundan oluşturulan SQL Server oturum açma bilgilerinin adını belirtir.

SQL_Server_login_from_certificate
Bir sertifikayla eşlenen SQL Server oturum açma bilgilerinin adını belirtir.

SQL_Server_login_from_AsymKey
Asimetrik anahtarla eşlenen SQL Server oturum açma bilgilerinin adını belirtir.

server_role
Bir sunucu rolünün adını belirtir.

CASCADE
Reddedilen iznin, bu sorumlu tarafından verildiği diğer sorumlulara da reddedildiğini gösterir.

AS SQL_Server_login
Bu sorguyu yürüten ana kişinin izin reddetme hakkını aldığı SQL Server girişini belirtir.

Remarks

Sunucu kapsamındaki izinler yalnızca geçerli veritabanı ana veritabanı olduğunda reddedilebilir.

Sunucu izinleri hakkında bilgiler sys.server_permissions katalog görünümünde mevcuttur. Sunucu prensipleri hakkında bilgiler sys.server_principals katalog görünümünde mevcuttur.

OPTION ile izin verilen bir yönetime DENY izin verirken CASCADE belirtilmemişse ifade GRANT başarısız olur.

SQL Server girişleri ve sunucu rolleri sunucu düzeyinde güvenliklidir. SQL Server girişi veya sunucu rolünde reddedilebilecek en spesifik ve sınırlı izinler, bunları dolaylı olarak içeren daha genel izinlerle birlikte aşağıdaki tabloda listelenmiştir.

SQL Server giriş veya sunucu rolü izni SQL Server girişi veya sunucu rolü izni tarafından ima edilir Sunucu izniyle örtülü
CONTROL CONTROL KONTROL SUNUCUSU
IMPERSONATE CONTROL KONTROL SUNUCUSU
VIEW TANIMI CONTROL VIEW TÜM TANIMLAR
ALTER CONTROL HERHANGI BIR LOGIN DEĞIŞTIRME

HERHANGI BIR SERVER ROLE DEĞIŞTIRME

Permissions

Giriş için, giriş üzerinde KONTROL izni veya sunucuda HER TÜRLÜ LOGIN izni değiştirmek gerekir.

Sunucu rolleri için, sunucu rolünde CONTROL izni veya sunucudaki HER TÜRLÜ SERVER ROLE izni değiştirmek gerekir.

Examples

A. Girişte IMPERSONATE izni reddedilme

Aşağıdaki örnek, IMPERSONATE Windows Server WanidaBenshoofkullanıcısından oluşturulan bir SQL Server girişine SQL Server girişine AdvWorks\YoonM izin verilmemektedir.

USE master;  
DENY IMPERSONATE ON LOGIN::WanidaBenshoof TO [AdvWorks\YoonM];  
GO  

B. CASCADE ile DEFINITION izni reddetme VIEW

Aşağıdaki örnek, VIEW DEFINITION SQL Server girişine SQL Server EricKurjanRMeyyappangirişine izin verilmemesini engeller. Bu CASCADE seçenek, VIEW DEFINITION bu izni veren müdürlerin EricKurjan de izin RMeyyappan verilmediğini belirtir.

USE master;  
DENY VIEW DEFINITION ON LOGIN::EricKurjan TO RMeyyappan   
    CASCADE;  
GO   

C. Sunucu rolünde DEFINITION izni reddedilmesi VIEW

Aşağıdaki örnek, sunucu rolünde sunucu rolünü VIEW DEFINITION reddeder.SalesAuditors

USE master;  
DENY VIEW DEFINITION ON SERVER ROLE::Sales TO Auditors ;  
GO