SQL Server Agent Rolleri
Bir login’in SQL Server Agent’a ulaşabilmesi için msdb veritabanındaki bazı veritabanı rolleri üzerinde yetkisinin olması gerekmektedir. Msdb veritabanındaki bu roller aşağıdaki gibidir.
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
Eğer login’in yukardaki veritabanı rollerinden herhangi birinde yetkisi varsa ya da sysadmin hakkı varsa SQL Server Management Studio üzerinde SQL Server Agent’ı görebilir. Yukarda bahsettiğimiz bu rolleri kısaca detaylandıralım.
SQLAgentUserRole: SQL Server Agent veritabanı rollerinden en az yetkisi olan roldür. Aşağıdaki tabloda bu role’e sahip bir login’in yapabileceklerini görebilirsiniz. Operatörler ve proxy’ler hakkında detaylı bilgi almak için aşağıdaki makalelerden faydalanabilirsiniz.
“Joblarımızı Proxy Hesabı ile Çalıştırmak“
|
Operatör |
Local job’lar
(sadece sahibi olunan job’lar) |
Job schedule etme
(sadece sahibi olunan schedule’lar için geçerlidir) |
Proxy’ler |
Oluşturma/Düzenleme/Silme Yetkisi |
Yok |
Var. Sadece job sahipliği değiştirilemez
|
Var |
Yok |
Aktif/Pasif etme Yetkisi |
Yok |
Var |
Var |
Uygulanamaz |
Özelliklerini Görme Yetkisi |
Yok |
Var |
Var |
Yok |
Job’ı Start/Stop Etme Yetkisi |
Uygulanamaz |
Var |
Uygulanamaz |
Uygulanamaz |
Job History’sini Görme Yetkisi |
Uygulanamaz |
Var |
Uygulanamaz |
Uygulanamaz |
Job History’sini Silme Yetkisi |
Uygulanamaz |
Yok
Sahip olunan job’ın history’sini silmek için sp_purge_jobhistory üzerinde execute yetkisinin olması gerekiyor. |
Uygulanamaz |
Uygulanamaz |
Attach/Detach Etme Yetkisi |
Uygulanamaz |
Uygulanamaz |
Var |
Uygulanamaz |
SQLAgentReaderRole: SQLAgentUserRole’ün yetkilerinin tamamına sahiptir. Ekstra bazı yetkileri vardır. Detaylarını aşağıdaki tabloda görebilirsiniz. MULTI-SERVER JOB’lar ile ilgili detaylı bilgiyi “MULTI-SERVER JOBS” isimli makalede bulabilirsiniz.
|
Operatör |
Local job’lar
|
Multiserver Job’lar |
Job schedule etme
|
Proxy’ler |
Oluşturma/Düzenleme/Silme Yetkisi |
Var |
Var (sadece sahibi olunan job’lar) |
Yok |
Var (sadece sahibi olunan schedule’lar için geçerlidir) |
Yok |
Aktif/Pasif etme Yetkisi |
Yok |
Var (sadece sahibi olunan job’lar) |
Yok |
Var (sadece sahibi olunan schedule’lar için geçerlidir) |
Uygulanamaz |
Özelliklerini Görme Yetkisi |
Yok |
Var |
Var |
Var |
Yok |
Özelliklerini Değiştirme Yetkisi |
Yok |
Var (sadece sahibi olunan job’lar) |
Yok |
Var (sadece sahibi olunan schedule’lar için geçerlidir) |
Yok |
Job’ı Start/Stop Etme Yetkisi |
Uygulanamaz |
Var (sadece sahibi olunan job’lar) |
Yok |
Uygulanamaz |
Uygulanamaz |
Job History’sini Görme Yetkisi |
Uygulanamaz |
Var |
Var |
Uygulanamaz |
Uygulanamaz |
Job History’sini Silme Yetkisi |
Uygulanamaz |
Yok
Sahip olunan job’ın history’sini silmek için sp_purge_jobhistory üzerinde execute yetkisinin olması gerekiyor. |
Yok |
Uygulanamaz |
Uygulanamaz |
Attach/Detach Etme Yetkisi |
Uygulanamaz |
Uygulanamaz |
Uygulanamaz |
Var (sadece sahibi olunan schedule’lar için geçerlidir) |
Uygulanamaz |
SQLAgentOperatorRole: SQLAgentReaderRole’ün yetkilerinin tamamına sahiptir. Ekstra bazı yetkileri vardır. Detaylarını aşağıdaki tabloda görebilirsiniz.
|
Alert’ler |
Operatörler |
Local job’lar |
Multiserver Job’lar |
Job schedule etme |
Proxy’ler |
Oluşturma/Düzenleme/Silme Yetkisi |
Yok |
Yok |
Var. Sadece job sahipliği değiştirilemez |
Yok |
Var (sadece sahibi olunan schedule’lar için geçerlidir) |
Yok |
Aktif/Pasif etme Yetkisi |
Yok |
Yok |
Var
|
Yok |
Var
|
Uygulanamaz |
Özelliklerini Görme Yetkisi |
Var |
Var |
Var |
Var |
Var |
Var |
Özelliklerini Değiştirme Yetkisi |
Yok |
Yok |
Var (sadece sahibi olunan job’lar) |
Yok |
Var (sadece sahibi olunan schedule’lar için geçerlidir) |
Yok |
Job’ı Start/Stop Etme Yetkisi |
Uygulanamaz |
Uygulanamaz |
Var |
Yok |
Uygulanamaz |
Uygulanamaz |
Job History’sini Görme Yetkisi |
Uygulanamaz |
Uygulanamaz |
Var |
Var |
Uygulanamaz |
Uygulanamaz |
Job History’sini Silme Yetkisi |
Uygulanamaz |
Uygulanamaz |
Var |
Yok |
Uygulanamaz |
Uygulanamaz |
Attach/Detach Etme Yetkisi |
Uygulanamaz |
Uygulanamaz |
Uygulanamaz |
Uygulanamaz |
Var (sadece sahibi olunan schedule’lar için geçerlidir) |
|