Veri Tabanı - 1 11. Hafta Dersi
Dersin Hedefleri SQL Yapısal Sorgulama Dili Veri Kontrol Dili (DCL) GRANT DENY REVOKE
Veri tabanı içerisindeki verilere erişimleri düzenlemek için kullanılır Kullanıcı veya kullanıcı gruplarının erişim yetkilerini düzenlemektedir.
GRANT ifadesi Kullanıcıya veri tabanı veya veri tabanı nesneleri üzerinde çeşitli izinler vermek için kullanılır.
Kullanım şekli: GRANT {ALL veya izinler} ON {izin alanı} TO {kullanıcılar}
Kullanım: Grant ifadesinden sonra verilmek istenilen yetkiler yazılır. ALL parametresi kullanıldığında kullanıcıya tüm izinler verilir. Kullanılabilecek yetki ifadeleri tabloda gösterilmiştir.
ON ifadesi Yetkilendirmenin yapılacağı tabloyu belirtmek için kullanılır. ON ifadesinden sonra yetkilendirme yapılacak tablonun ismi yazılır. Eğer yetkilendirme veri tabanındaki tüm tablolar için yapılacak ise ON ifadesinden sonra * kullanılır.
TO ifadesi Yetkilendirmenin yapılacağı veri tabanı kullanıcısını belirtmek için kullanılır. Birden fazla kullanıcıya aynı yetkiler verilecek ise aralarına virgül konularak yazılabilir.
ÖRNEKLER GRANT SELECT ON OGRENCI TO deneme deneme kullanıcısına OGRENCİ tablosu için SELECT komutunu kullanma yetkisi verir.
ÖRNEKLER GRANT CREATE TABLE ON OGRENCI TO deneme1, deneme2 Deneme1 ve deneme2 kullanıcılarına OGRENCİ tablosu için CREATE TABLE komutunu kullanma yetkisi verir.
DENY ifadesi Kullanıcıların veri tabanı veya veri tabanı nesneleri üzerinde yapacakları işlemleri engellemek için kullanılır. DENY ile verilen yetki diğer komutlar ile verilen yetkilerden daha üstündür.
DENY ifadesi Bir kullanıcıya GRANT ile verilen bir yetkiden önce veya sonra DENY ifadesi ile engelleme yazılmış ise yetkinin geçerliliği kalmaz.
Kullanım şekli: DENY {ALL veya izinler} TO {kullanıcılar}
Kullanım: Deny ifadesinden sonra engellenmek istenilen yetkiler yazılır. Bu kısma yazılabilecek yetki ifadeleri tabloda belirtilmiştir.
TO ifadesi Yetkilendirmenin yapılacağı veri tabanı kullanıcısını belirtmek için kullanılır. Birden fazla kullanıcının yetkileri aynı anda kaldırılacak ise aralarına virgül konularak yazılabilir.
ÖRNEKLER DENY SELECT ON OGRENCI TO deneme deneme kullanıcısına OGRENCİ tablosu için SELECT komutunu kullanmasını engeller.
ÖRNEKLER DENY CREATE TABLE ON OGRENCI TO deneme1, deneme2 Deneme1 ve deneme2 kullanıcılarına OGRENCİ tablosunda CREATE TABLE komutunu kullanmalarını engeller.
REVOKE ifadesi Kullanıcıların veri tabanı veya veri tabanı nesneleri üzerinde verilen veya engellenen tüm yetkileri kaldırmak için kullanılır. DENY ile karıştırılmamalıdır.
REVOKE ifadesi REVOKE ile bir kullanıcının yetkisi kaldırılsa da daha sonra bu kullanıcı için GRANT ifadesi ile yetki verilebilir. Fakat DENY ile yetkisi engellenen bir kullanıcıya GRANT ile yetki verilse bile engellendiği işlemi gerçekleştiremez.
Kullanım şekli: REVOKE {ALL veya izinler} FROM {kullanıcılar} REVOKE {ALL veya izinler} ON {Tablo adi} FROM {kullanıcılar}
Kullanım: REVOKE ifadesinden sonra engellenmek istenilen yetkiler yazılır. ALL parametresi kullanıldığında kullanıcı için tüm yetkiler kaldırılır. Bu kısma yazılabilecek yetki ifadeleri tabloda belirtilmiştir.
FROM ifadesi Yetkisi kaldırılacak olan veri tabanı kullanıcısını belirtmek için kullanılır. Birden fazla kullanıcının yetkileri aynı anda kaldırılacak ise aralarına virgül konularak yazılabilir.
ÖRNEKLER REVOKE ALL FROM PUBLIC PUBLIC kullanıcı rolüne ait tüm yetkileri kaldırır.
ÖRNEKLER REVOKE UPDATE ON OGRENCİ FROM deneme1, deneme2 Deneme1 ve deneme2 kullanıcılarına OGRENCİ tablosunda UPDATE komutu ile işlem yapma yetkilerini kaldırır.
KAYNAKÇA TURGUT ÖZSEVEN VERİ TABANI YÖNETİM SİSTEMLERİ I www.w3schools.com/sql