SQL Server Role Nedir? Nasıl oluşturulur? Ne işe yarar?
SQL Server 2008 ve daha önceki sürümlerde yeni kurallar (role) atayamıyor ya da var olan görevleri değiştiremiyorduk. SQL Server 2008 sonrasında kural atama kavramı hayatımıza girmiş oldu.
Kaç Çeşit Kural (Role) vardır?
SQL Server görev kavramını 3 başlık altında toplayabiliriz;
bulkadmin (Bulk Insert Administrator – Çoklu Kayıt Yöneticisi) : Bulk Insert komutuna yetkisi olan
dbcreator (Database Creator – Veritabanı Yöneticisi) : Database oluşturabilme, silebilme, düzenleyebilme yetkisi olan
diskadmin (Disk Administrator – Dosya Yöneticisi) : Disk üzerinde bulunan dosyaları yönetme yetkisi olan
processadmin (Process Administrator – İşlemci Yöneticisi) : SQL Server üzerinde çalışan işlemcileri kontrol etme yetkisi olan.
public (Herkese Kısıtlı Hak) : SQL Server üzerinde standart ayarlarla giriş yapan herkesin rolüdür. Bu kural ile tüm kullanıcıların kısıtlı hakları vardır. Daha sonra bu kullanıcılara kural değişikliği yapılarak diğer kurallar atanabilir
securityadmin (Security Administrator – Güvenlik Yöneticisi) : Server üzerinde kullanıcıların yetkilerini denetlemek, yönetmek ve şifrelerini sıfırlamak ya da istendiğinde değiştirme yetkisi olan
serveradmin (Server Administrator – Server Yöneticisi) : SQL Server üzerinde yapı ayarları, başlat/durdur/yeniden başlat gibi yetkileri olan.
setupadmin (Setup Administrator) : SQL Server üzerinde farklı bir verştabanı kullanarak işlem yapma yetkisi olan
sysadmin (System Administrator – Sistem Yöneticisi) : En yüksek yetkisi olandır. Sistem üzerinde tüm yetkilere sahiptir
Bu kurallar procedur ile nasıl yönetilebilir?
sp_helpsrvrole : Server üzerinde bulunan kural listelerini gösterir
sp_helpsrvrolemember : Server üzerinde bulunan kullanıcıların hangi kurallar tanımlandığını gösterir
sp_srvrolepermission : Kural tanımlanmış yetki listesini gösterir
sp_addsrvrolemember : Kullanıcıya kural ataması yapar örn: exec sp_addsrvrolemember @loginame=’shrcy’, @rolename=’bulkadmin’
sp_dropsrvrolemember : Kullanıcıyı verilen kuraldan çıkışını sağlar örn: exec sp_dropsrvrolemember @loginame=’shrcy’, @rolename=’bulkadmin’
db_owner : Veritabanında en yüksek yetkilidir. Silme, ekleme, düzenleme, başlatma/durdurma gibi yetkileri vardır
db_accessadmin : Veritabanında kullanıcılara veritabanına erişim kural/yetki atayan yöneticidir
db_securityadmin :Veritabanındaki kural/yetkileri yönetir
db_datareader : Veritabanındaki kullanıcıların “SELECT” sorgusunu çalıştırmasına izin verir
db_datawriter : Veritabanındaki kullanıcıların “INSERT , DELETE , UPDATE sorgularını çalıştırmasına izin verir
db_ddladmin : Veritabanındaki kullanıcıların “DDL” komutlarını çalıştırmasına izin verir
db_denydatareader : Veritabanındaki kullanıcıların “SELECT” sorgusunu çalıştırmasını kısıtlar
db_denydatawriter : Veritabanındaki kullanıcıların “INSERT , DELETE , UPDATE sorgularını çalıştırmasını kısıtlar
db_backupoperator : Veritabanının yedeğini alma kuralı
Bu kurallar precedure ile nasıl yönetilebilir?
sp_helprole : Server üzerinde bulunan kural listelerini ve Application Role gösterir.
sp_addrolemember : Kullanıcıya kural ataması yapar örn: exec sp_addrolemember @membername=’shrcy’, @rolename=’bulkadmin’
sp_droprolemember : Kullanıcıyı verilen kuraldan çıkışını sağlar örn: exec sp_addrolemember @membername=’shrcy’, @rolename=’bulkadmin’
sp_helpdbfixedrole : Sorgunun yapıldığı veritabanında tanımlanmış bütün kuralları/yetkileri listeler
sp_dbfixedrolepermission : Kurallara tanımlanan yetkileri listeler
Eğer “guest” hesabı oluşturursanız veritabanında, database için tek tek kullanıcı hesabı açıp tanımlamanıza gerek kalmaz. Bunu da aşağıdaki iki procedure komutu ile kullanılabilir ya da kullanılamaz olarak ayarlayabilirsiniz.
sp_setapprole : Kullanılabilir
sp_unsetapprole : Kullanılamaz
Güncel haberlerimizden ve kampanyalarımızdan haberdar olun.
Hilal Mh. Cezayir Cd. No:15/A Çankaya Ankara / Türkiye
0312 472 22 33 | 0850 303 VRYM
0850 200 21 76
Cevdet KAYMAZ
Atatürk Bul. Hacı Hanife İş Merkezi No: 120/12 Odunpazarı Eskişehir / Türkiye
Burhan KAYMAZ
Seğmenler Vergi Dairesi - 924 047 65 78
321915
2/2307
Bilgi Teknolojileri ve İletişim Kurumu