Merhaba arkadaşlar, bugünkü yazımızda SQL GRANT, DENY, REVOKE KOMUTLARI konusunu işleyeceğiz.
İçindekiler
Grant Komutu
- Kullanıcılara veritabanı nesneleri üzerinde güvenlik ayrıcalıkları vermek için kullanılan komuttur.
Kullanım Şekli
GRANT (all | izinler) ON (izneTabiTutulanlar) TO (izinVerilenler)
- Yetki_adı : Kullanıcılara verilecek olan erişim yetkisidir. Erişim seçeneklerinden bazıları: ALL, SELECT, INSERT, UPDATE.
- Nesne_adı: Üzerinde yetki verilecek tablo, View, Stored Proc gibi bir veritabanı nesnesini gösterir.
- Kullanıcı_adı: Yetki verilecek kullanıcının adını gösterir.
- Public: Bütün kullanıcılara yetki vermek için kullanılır.
- Rol_adı: Bir grup için toplanan yetkileri gösterir.
- With Grant Option: Bir kullanıcıya diğer kullanıcılara yetki verme olanağı sağlar.
1-) Sunucuya dışarıdan bir erişim sağlamak için bir giriş (login) oluşturulmalıdır.
CREATE LOGIN MERYEM WITH PASSWORD="ASDFGHJK"
2-) Şimdi login üzerinden bir kullanıcı yaratalım.
CREATE USER MERYEM FOR LOGIN SARIYER
3-) MERYEM kullanıcısına tablo oluşturma yetkisi veriyoruz.
GRANT CREATE TABLE TO MERYEM
4-) MERYEM kullanıcısına güncelleme, silme ve ekleme yetkisi veriyoruz.
GRANT INSERT,UPDATE,DELETE TO MERYEM
5-) Öğrenciler tablosu üzerinde SELECT komutunu kullanma yetkisini tüm kullanıcılara veriyoruz.
GRANT SELECT ON ogrenciler TO *.*
6-) Öğrenciler tablosu üzerinde SELECT komutunu kullanma yetkisini, diğer kullanıcılara da aynı yetkiyi verebilecek şekilde, Gizem adlı kullanıcıya veriyoruz.
GRANT SELECT ON ogrenciler TO Gizem WITH GRANT OPTION
7-) MERYEM kullanıcımızın “öğrenciler” tablosundan select çekebilmesine izin verelim.
GRANT SELECT ON ogrenciler TO MERYEM
😎 MERYEM kullanıcısına öğrenciler tablosu üzerinde select ve insert hakkı veriyoruz. Ama with grant option ifadesinden dolayı, MERYEM kullanıcısı da, başkasına da bu yetkiyi verebilir.
GRANT SELECT,INSERT ON ogrenciler TO MERYEM WITH GRANT OPTION
Deny Komutu
- GRANT komutunun tersidir.
- Yetkileri engeller.
Kullanım Şekli
DENY (ALL | izinler) TO (izinVerilenler)
1-) MERYEM kullanıcısına tablo yaratmayı yasakladık.
DENY CREATE TABLE TO MERYEM
2-) MERYEM kullanıcısının öğrenciler tablosunda INSERT ve SELECT kullanmasını engelledik.
DENY INSERT, SELECT ON ogrenciler TO MERYEM
Revoke Komutu
- GRANT ile değiştirdiğimiz hakları eski haline döndürmek için kullanılır.
Kullanım Şekli
REVOKE (all | izinler) TO/FROM (izinVerilenler)
- Revoke yetki_adı
- On nesne_adı
- From { kullanıcı_adı | PUBLIC | rol_adı }
- Yetki_Adı : Geri alınacak olan erişim yetkisidir.
- Nesne_Adı: Üzerinde yetki geri alınacak olan tablo, View, Stored Proc gibi bir veritabanı nesnesini gösterir.
- Kullanıcı_Adı: Yetkisi geri alınacak kullanıcının adını gösterir.
- Public: Bütün kullanıcılardan yetkiyi geri almak için kullanılır.
- Rol_Adı: Bir grup için toplanan yetkileri gösterir.
1-) MERYEM kullanıcısına verilen tüm yetkileri kaldırır.
REVOKE ALL ON REGION TO MERYEM
Evet arkadaşlar sizlerle bir çok sql sorgularını inceledik. Dilerseniz Grant, Deny, Revoke komutları dışında Select, İnsert, Update, Delete, Create, Alter, Drop komutlarına tekrar göz gezdirebilirsiniz. Sql Sorgularının genel yapısını incelemek isterseniz linki tıklamanız yeterli olacaktır. Yabancı kaynaklardan da bakabilmeniz için buraya linki bırakıyorum.
Hoşça Kalın 🙂
Hata!
Yorumunuz Çok Kısa, Yorum yapabilmek için en az En az 10 karakter gerekli