grant (Transact-SQL)
Bir asıl bir güvenliği sağlanabilir üzerinde izinleri verir.grant için genel bir kavram olan <bazı izin> on <bazı nesne> to <bazı kullanıcı, oturum açma veya grup>.İzinler hakkında genel tartışma için bkz: (Veritabanı altyapısı) izinleri.
Sözdizimi
Simplified syntax for GRANT
GRANT { ALL [ PRIVILEGES ] }
| permission [ ( column [ ,...n ] ) ] [ ,...n ]
[ ON [ class :: ] securable ] TO principal [ ,...n ]
[ WITH GRANT OPTION ] [ AS principal ]
Bağımsız değişkenler
ALL
Bu seçeneği kaldırılmıştır ve yalnızca geriye dönük uyumluluk için korunur.Tüm olası izinleri vermez.Tüm verme, aşağıdaki izinleri vermeye eşdeğerdir.güvenliği sağlanabilir bir veritabanı, tüm demektir backup database backup log, create database, create default, create FUNCTION, create procedure, Kural Oluştur, create table ve create VIEW.
güvenliği sağlanabilir skalerişlevise, tüm demektir yürütme ve başvuruları.
güvenliği sağlanabilir bir tabloolup-değerli işlev, delete, INSERT, başvurular, anlamına gelir tümünü seçin ve güncelleştir.
güvenliği sağlanabilir bir saklı yordam, tüm demektir execute.
güvenliği sağlanabilir bir tabloise, tüm anlamına gelir delete, INSERT, başvurular, select ve update.
güvenliği sağlanabilir bir görünüm ise, tüm anlamına gelir delete, INSERT, başvurular, select ve update.
AYRICALIKLAR
ISO uyumluluğu için dahil.Tüm davranışını değiştirmez.permission
Bir izni adıdır.Güvenli Hale Getirilebilenler izin geçerli eşleştirmeler MHT'lerin aşağıda açıklanmıştır.column
İzin verilen bir tablo sütun adını belirtir.Parantez içinde "()" gereklidir.class
İzin verilen güvenliği sağlanabilir sınıfını belirtir.niteleyici kapsam"::" gereklidir.securable
İzin verilen güvenliği sağlanabilir belirtir.İÇİNprincipal
Bir asıl adıdır.Bir güvenliği sağlanabilir üzerinde izinleri verilebilir sorumluları, güvenliği sağlanabilirbağlı olarak değişebilir.Geçerli birleşimlerini için aşağıda listelenen MHT'lerin bakın.GRANT SEÇENEĞİ
Grantee de diğer ilkeleri için belirtilmiş izni vermek olanağı verilir gösterir.ASprincipal
Bu sorguyu yürüttükten sorumlusunun izni vermek için kendi sağ türetir içinden asıl adı belirtir.
Açıklamalar
grant deyim tam sözdizimi, karmaşık bir işlemdir.Yukarıdaki sözdizimi Diyagram yapısını dikkatini çekmek için Basitleştirilmiş.Özel güvenli hale Getirilebilenler izinleri vermek için tam sözdizimi aşağıda listelenen konular açıklanmıştır.
revoke deyim verilen izinleri kaldırmak için kullanılabilir ve deny deyim bir asıl bir grant aracılığıyla belirli bir izin kazanmasını önlemek için kullanılabilir.
Bir izni verme, REDDETME veya revoke belirtilen güvenliği sağlanabilirüzerinde bu izni kaldırır.güvenliği sağlanabiliriçeren bir üst kapsam aynı izin verilmezse, deny öncelik kazanır.Ancak daha yüksek bir kapsam verilen yetkiyi iptal etme öncelikli değildir.
kapsam belirtilen veritabanının veritabanı -düzey izinler verilir.Bir kullanıcının başka bir veritabanındaki nesneleri için izinleri gerekiyorsa, diğer veritabanında kullanıcı hesabı oluşturmak veya diğer veritabanı yanı sıra, geçerli veritabanı kullanıcı hesabına erişim izni.
Dikkat |
---|
tablo-düzey verme bir sütunüzerinde -düzey grant öncelikli değildir.Geriye dönük uyumluluk açısından bu tutarsızlık izinleri hiyerarşisindeki tutulduktan.Sonraki bir sürümde kaldırılacak. |
sp_helprotect Sistem saklı yordam izinleri bir veritabanı -düzeygüvenliği sağlanabilirüzerinde bildiriyor.
İzinler
Grantor (veya as seçeneği ile belirtilen sorumlusunun) izniyle kendisini grant seçeneği ya da verilen izindir anlamına gelir daha yüksek bir izin olması gerekir.as seçeneği kullanılarak, ek gereksinimler Uygula.güvenliği sağlanabilirbakın-Ayrıntılar için belirli bir konu.
Nesne sahipleri sahip oldukları nesnelerdeki izinleri verebilirsiniz.Bir güvenliği sağlanabilir üzerinde Denetim iznine sahip ilkeleri, güvenliği sağlanabilirüzerinde izni verebilirsiniz.
Üyeleri gibi control server izni grantees sysadmin sabit sunucu rolü, bir güvenliği sağlanabilir Server üzerinde herhangi bir izni vermek.Üyeleri gibi bir veritabanı üzerinde denetim izni grantees db_owner veritabanı rolü, sabit herhangi güvenliği sağlanabilir veritabanında bulunan herhangi bir izni vermekBir şema üzerinde control izni grantees herhangi bir şema içinde herhangi bir nesne üzerinde izni verebilirsiniz.
Örnekler
Aşağıdaki tablo , güvenli hale Getirilebilenler ve güvenliği sağlanabiliraçıklayan konuları listeler-belirli sözdizimi.
Uygulama rolü |
|
Çevirme |
|
Asimetrik anahtar |
|
Sertifika |
|
Sözleşme |
|
Veritabanı |
|
Bitiş noktası |
|
Tam metin kataloğu |
|
Tam metin Stoplist |
|
İşlev |
|
Oturum Aç |
|
İleti türü |
|
Nesne |
|
Sıra |
|
Uzak hizmet bağlama |
|
Rolü |
|
Rota |
|
Şema |
|
Sunucu |
|
Hizmet |
|
Saklı yordam |
|
Simetrik anahtar |
|
Eşanlamlı |
|
Sistem nesneleri |
|
Tablo |
|
Tür |
|
Kullanıcı |
|
Görünüm |
|
xml şema koleksiyonu |