Aracılığıyla paylaş


GRANT veritabanı asıl izinler (Transact-SQL)

Bir veritabanı, veritabanı rolü veya uygulama rolü izinleri verir.

Topic link iconTransact-SQL sözdizimi kuralları

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