Aracılığıyla paylaş


Nesne izinleri (Transact-sql) deny

Securables nesne sınıfı üyesi izinlerini reddeder. object sınıfının üyeleri şunlardır: tabloları, gösterim, tablo değerli işlevler, saklı yordamlar, genişletilmiş saklı yordamları, skalar işlevleri, toplama işlevleri, hizmet kuyrukları ve eş anlamlı.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

DENY <permission> [ ,...n ] ON 
    [ OBJECT :: ][ schema_name ]. object_name [ ( column [ ,...n ] ) ]
        TO <database_principal> [ ,...n ] 
    [ CASCADE ]
        [ AS <database_principal> ]

<permission> ::=
    ALL [ PRIVILEGES ] | permission [ ( column [ ,...n ] ) ]

<database_principal> ::= 
        Database_user 
    | Database_role 
    | Application_role 
    | Database_user_mapped_to_Windows_User 
    | Database_user_mapped_to_Windows_Group 
    | Database_user_mapped_to_certificate 
    | Database_user_mapped_to_asymmetric_key 
    | Database_user_with_no_login

Bağımsız değişkenler

  • permission
    Şema içerdiği bir nesne üzerinde engellendi izni belirler. İzinler listesi için bu konunun ilerleyen bölümlerinde açıklamalar bölümüne bakın.

  • ALL
    Tüm inkar tüm olası izinleri reddetmek değil. Tüm inkar, belirtilen nesne geçerli tüm ANSI-92 izinleri inkar eşdeğerdir. TÜM anlamını aşağıdaki gibi değişir:

    Skalar fonksiyon izinleri: yürütme, referanslar.

    Tablo değerli işlev izinleri: delete, INSERT, başvurular, select, update.

    Saklı yordam izinleri: yürütün.

    Tablo izinleri: delete, INSERT, başvurular, select, update.

    Görüntüleme izinleri: delete, INSERT, başvurular, select, update.

  • AYRICALIKLAR
    ANSI-92 uyumluluğu için dahil. TÜM davranışını değiştirmez.

  • column
    Bir sütunun adını, tablo, görünüm veya tablo değerli işlev izni engellenmesini belirtir. Parantezler () gereklidir. Bir sütun yalnızca seçim, referanslar ve güncelleştirme izinleri engellenebilir. columnizinleri yan tümcesi içinde ya da güvenilir adından sonra belirtilebilir.

    Dikkat notuDikkat

    Bir tablo düzeyi deny sütun düzeyinde vermek öncelikli değildir. Geriye doğru uyumluluk için izinleri hiyerarşisindeki bu tutarsızlık korunmuştur.

  • ON [ OBJECT :: ] schema_name**.** object_name
    Nesnesi üzerinde izni engellenmesini belirtir. NESNEYİ ifade isteğe bağlı olmadığını schema_namebelirtilen. NESNEYİ ifade kullanılmış ise kapsam niteleyicisi (:) gereklidir. Eğer schema_namebelirtilmemişse, varsayılan şemayı kullanılır. Eğer schema_nameBelirtilen şema kapsam niteleyicisi (.) gereklidir.

  • İÇİN <database_principal>
    Sorumlusunun izni engellenmesini belirtir.

  • ART ARDA SIRALI
    Diğer ilkeleri için bu asıl adı verilen da engellenmesini izni engellendi gösterir.

  • as <database_principal>
    Içinden bu sorguyu yürüttükten sorumlusunun izni reddetme hakkı türetir asıl adı belirtir.

  • Database_user
    Veritabanı kullanıcı belirtir.

  • Database_role
    Veritabanı rolü belirtir.

  • Application_role
    Uygulama rolü belirtir.

  • Database_user_mapped_to_Windows_User
    Bir Windows kullanıcısı eşlenen veritabanı kullanıcı belirtir.

  • Database_user_mapped_to_Windows_Group
    Bir Windows grubu eşlenen veritabanı kullanıcı belirtir.

  • Database_user_mapped_to_certificate
    Sertifika eşlenen veritabanı kullanıcı belirtir.

  • Database_user_mapped_to_asymmetric_key
    Bir asimetrik anahtar eşlenen veritabanı kullanıcı belirtir.

  • Database_user_with_no_login
    Veritabanı kullanıcı ile ilgili hiçbir sunucu düzeyinde asıl adı belirtir.

Açıklamalar

Nesneler hakkında bilgi çeşitli katalog görünümlerinde görülebilir. Daha fazla bilgi için, bkz. Nesne Kataloğu görünümleri (Transact-sql).

Bir şema izinleri hiyerarşisindeki alt üst olan şema tarafından bulunan düzey güvenilir bir nesnedir. Bir nesne üzerinde engellendi en belirli ve sınırlı izinleri tarafından implication dahil daha genel izinleri ile birlikte aşağıdaki tabloda listelenir.

Nesne izni

Nesne izni tarafından açık

Şema izni tarafından açık

ALTER

DENETİM

ALTER

DENETİM

DENETİM

DENETİM

DELETE

DENETİM

DELETE

YÜRÜTME

DENETİM

YÜRÜTME

EKLE

DENETİM

EKLE

RECEIVE

DENETİM

DENETİM

REFERANSLAR

DENETİM

REFERANSLAR

SEÇİN

RECEIVE

SEÇİN

SAHİPLİK AL

DENETİM

DENETİM

GÜNCELLEŞTİRME

DENETİM

GÜNCELLEŞTİRME

GÖRÜNÜMÜ DEĞİŞTİR İZLEME

DENETİM

GÖRÜNÜMÜ DEĞİŞTİR İZLEME

VIEW DEFINITION

DENETİM

VIEW DEFINITION

İzinler

Nesne üzerinde DENETIM izni gerektirir.

as yan tümcesi kullanırsanız, belirtilen sorumlusunun nesnesi üzerinde izni reddedilen sahip olmalıdır.

Örnekler

A.Bir tablo üzerinde select izni reddetme

Aşağıdaki örnek SELECTizni ver RosaQdMmasa Person.Addressde AdventureWorks2012veritabanı.

USE AdventureWorks2012;
DENY SELECT ON OBJECT::Person.Address TO RosaQdM;
GO

USE AdventureWorks2012;
DENY SELECT ON OBJECT::Person.Address TO RosaQdM;
GO

B.Saklı yordam üzerinde execute izni reddetme

Aşağıdaki örnek EXECUTEsaklı yordam HumanResources.uspUpdateEmployeeHireInfoadı verilen bir uygulama rol Recruiting11.

USE AdventureWorks2012;
DENY EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo
    TO Recruiting11;
GO 

USE AdventureWorks2012;
DENY EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo
    TO Recruiting11;
GO 

C.Görünümüyle başvurular iznini reddetme

Aşağıdaki örnek REFERENCESizin sütunu BusinessEntityIDgörünümünde HumanResources.vEmployeekullanıcıya Wanidaile CASCADE.

USE AdventureWorks2012;
DENY REFERENCES (BusinessEntityID) ON OBJECT::HumanResources.vEmployee 
    TO Wanida CASCADE;
GO

USE AdventureWorks2012;
DENY REFERENCES (BusinessEntityID) ON OBJECT::HumanResources.vEmployee 
    TO Wanida CASCADE;
GO

Ayrıca bkz.

Başvuru

Nesne IZINLERI (Transact-sql)

revoke nesne izinleri (Transact-sql)

Nesne Kataloğu görünümleri (Transact-sql)

sys.fn_builtin_permissionsilişkili (Transact-sql)

has_perms_by_name (Transact-sql)

sys.fn_my_permissions (Transact-sql)

Kavramlar

Izinler (veritabanı altyapısı)

Sorumluları (veritabanı altyapısı)

Securables