GRANT veritabanı asıl izinler (Transact-SQL)
Bir veritabanı, veritabanı rolü veya uygulama rolü izinleri verir.
GRANT permission [ ,...n ]
ON
{ [ USER :: database_user ]
| [ ROLE :: database_role ]
| [ APPLICATION ROLE :: application_role ]
}
TO <database_principal> [ ,...n ]
[ WITH GRANT OPTION ]
[ AS <database_principal> ]
<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
Izin verilebilecek üzerinde veritabanı anapara belirtir.Izinler listesi için bu konunun ilerleyen bölümlerindeki Açıklamalar bölümüne bakın.KULLANıCı**::database_user
Sınıf ve üzerinde izin verilen kullanıcının adını belirtir.Kapsam niteleyici (::**) gereklidir.ROLE**::database_role
Sınıf ve üzerinde izin verilen rolün adını belirtir.Kapsam niteleyici (::**) gereklidir.uygulama rolü ::application_role
Sınıf ve adını belirtir uygulama rolü, izin verilen üzerinde.Kapsam niteleyici (::) gereklidir.grant SEÇENEĞİYLE
Diğer ilkeleri için belirtilmiş izni verme yeteneğini de verilecek anapara gösterir.< Database_principal > AS
Bu sorguyu yürüttükten sorumlusunun izni vermek için sağ türetir içinden bir sorumlusu belirtir.Database_user
Bir veritabanı kullanıcısı belirtir.Database_role
Bir veritabanı rolü belirtir.Application_role
uygulama rolü belirtir.Database_user_mapped_to_Windows_User
Bir Windows kullanıcısı için eşlenen bir veritabanı kullanıcısı belirtir.Database_user_mapped_to_Windows_Group
Bir Windows grubuna eşlenen bir veritabanı kullanıcısı belirtir.Database_user_mapped_to_certificate
Eşlenmiş bir veritabanı kullanıcısı belirtir bir sertifika.Database_user_mapped_to_asymmetric_key
Bir asimetrik anahtar eşlenen bir veritabanı kullanıcısı belirtir.Database_user_with_no_login
Bir veritabanı kullanıcısı yok karşılık gelen sunucu-ile belirtir düzey asıl.
Remarks
Veritabanı ilkeleri hakkında bilgi de görülebilir sys.database_principals kataloğunu görüntüleyin.Veritabanı düzeyinde izinler hakkında bilgi de görülebilir sys.database_permissions kataloğunu görüntüleyin.
Veritabanı kullanıcı izinleri
Bir veritabanı izinleri sıradüzeni içindeki üst olan veritabanı tarafından bulunan düzey güvenliği sağlanabilir veritabanı kullanıcıdır.Bir veritabanı kullanıcı hakkı verilebilen en özel ve sınırlı izinleri aşağıdaki listelenen tablo, bunları implication tarafından içeren daha genel izinlerle birlikte.
Veritabanı kullanıcı izni |
Veritabanı kullanıcı izni tarafından örtük |
Veritabanı izinleri tarafından örtük |
---|---|---|
DENETİMİ |
DENETİMİ |
DENETİMİ |
KİMLİĞİNE BÜRÜN |
DENETİMİ |
DENETİMİ |
DEĞİŞTİRME |
DENETİMİ |
HERHANGİ BİR KULLANICI DEĞİŞTİRME |
GÖRÜNÜM TANIMI |
DENETİMİ |
GÖRÜNÜM TANIMI |
Veritabanı rolü izinleri
Bir veritabanı rolü bir veritabanı-izinleri sıradüzeni içindeki üst olan veritabanı tarafından bulunan güvenliği sağlanabilir düzey.Bir veritabanı rolü verilebilecek en özel ve sınırlı izinlere göre implication bunları içeren daha genel izinleri ile birlikte aşağıdaki tabloda listelenmiştir.
Veritabanı rolü izni |
Veritabanı rolü izni tarafından örtük |
Veritabanı izinleri tarafından örtük |
---|---|---|
DENETİMİ |
DENETİMİ |
DENETİMİ |
SAHİPLİĞİ ALMA |
DENETİMİ |
DENETİMİ |
DEĞİŞTİRME |
DENETİMİ |
HERHANGİ BİR ROLÜNÜ DEĞİŞTİRME |
GÖRÜNÜM TANIMI |
DENETİMİ |
GÖRÜNÜM TANIMI |
Uygulama rolü izinleri
Bir uygulama rolü bir veritabanı-izinleri sıradüzeni içindeki üst olan veritabanı tarafından bulunan güvenliği sağlanabilir düzey.Üzerinde verilebilecek en özel ve sınırlı izinleri bir uygulama rolü implication tarafından bunları içeren daha genel izinleri ile birlikte aşağıdaki listelenir.
Uygulama rolü izni |
Uygulama rol izni tarafından örtük |
Veritabanı izinleri tarafından örtük |
---|---|---|
DENETİMİ |
DENETİMİ |
DENETİMİ |
DEĞİŞTİRME |
DENETİMİ |
HERHANGİ BİR uygulama rolü DEĞİŞTİRME |
GÖRÜNÜM TANIMI |
DENETİMİ |
GÖRÜNÜM TANIMI |
İzinler
The grantor (veya anapara AS seçeneği ile belirtilen) izniyle kendisini GRANT OPTION veya izninin verilmiş anlamına gelir, daha yüksek bir izin olması gerekir.
AS seçeneğini kullanıyorsanız, aşağıdaki ek koşulları uygulanır.
AS granting_principal |
Ek izin gerekli |
---|---|
Veritabanı kullanıcısı |
Kullanıcı, üyelik özelliklerini AL izninin db_securityadmin üyelik sabit veritabanı rolü,db_owner veritabanı rolü veya üyelik sabitsysadmin sabit sunucu rolü. |
Bir Windows kullanıcı için eşlenen veritabanı kullanıcısı |
Kullanıcı, üyelik özelliklerini AL izninin db_securityadmin üyelik sabit veritabanı rolü,db_owner veritabanı rolü veya üyelik sabitsysadmin sabit sunucu rolü. |
Bir Windows grubu eşlenen veritabanı kullanıcısı |
Üyelik Windows grubunda üyeliği db_securityadmin üyelik sabit veritabanı rolü,db_owner veritabanı rolü veya üyelik sabitsysadmin sabit sunucu rolü. |
Bir sertifikayla eşleştirilmiş olan veritabanı kullanıcısı |
Üyelik db_securityadmin üyelik sabit veritabanı rolü,db_owner veritabanı rolü veya üyelik sabitsysadmin sabit sunucu rolü. |
Bir asimetrik anahtar eşlenen veritabanı kullanıcısı |
Üyelik db_securityadmin üyelik sabit veritabanı rolü,db_owner veritabanı rolü veya üyelik sabitsysadmin sabit sunucu rolü. |
Herhangi bir sunucu sorumlusu için eşlenen veritabanı kullanıcısı |
Kullanıcı, üyelik özelliklerini AL izninin db_securityadmin üyelik sabit veritabanı rolü,db_owner veritabanı rolü veya üyelik sabitsysadmin sabit sunucu rolü. |
Veritabanı rolü |
ALTER iznine üyeliği olan rolüne db_securityadmin üyelik sabit veritabanı rolü,db_owner veritabanı rolü veya üyelik sabitsysadmin sabit sunucu rolü. |
Uygulama rolü |
ALTER iznine üyeliği olan rolüne db_securityadmin üyelik sabit veritabanı rolü,db_owner veritabanı rolü veya üyelik sabitsysadmin sabit sunucu rolü. |
Bir güvenliği sağlanabilir olabilir DENETIM izni olan ilkeleri üzerinde iznigüvenliği sağlanabilir.
Üyeleri gibi bir veritabanı üzerinde DENETIM izni grantees db_owner sabit veritabanı rolü, herhangi bir izni verebilir veritabanındaki güvenliği sağlanabilir.
Örnekler
C.Başka bir kullanıcıya kullanıcı DENETIM izni verme
Aşağıdaki örnek verir CONTROL izni AdventureWorks Kullanıcı Wanida kullanıcı için RolandX.
USE AdventureWorks;
GRANT CONTROL ON USER::Wanida TO RolandX;
GO
b.GRANT OPTION olan bir kullanıcı için Görünüm TANıMıNA rol izni verme
Aşağıdaki örnek verir VIEW DEFINITION izni AdventureWorks Rol SammamishParking ile birlikte GRANT OPTION veritabanı kullanıcısı için JinghaoLiu.
USE AdventureWorks;
GRANT VIEW DEFINITION ON ROLE::SammamishParking
TO JinghaoLiu WITH GRANT OPTION;
GO
c.Özelliklerini AL kullanıcıya uygulama rolü izni verme
Aşağıdaki örnek verir IMPERSONATE Kullanıcı izinleri HamithaL için AdventureWorks uygulama rolü AccountsPayable17.
USE AdventureWorks;
GRANT IMPERSONATE ON USER::HamithaL TO AccountsPayable17;
GO
See Also