SQL Server Aracısı sabit veritabanı rolleri
Şunlar için geçerlidir:SQL Server
Azure SQL Yönetilen Örneği
Önemli
Azure SQL Yönetilen Örneğiüzerinde, SQL Server Agent özelliklerinin çoğu, ancak hepsi değil, şu anda desteklenmektedir. Ayrıntılar için bkz. Azure SQL Yönetilen Örneği T-SQL'in SQL Server'dan farkları .
SQL Server, yöneticilere SQL Server Aracısı erişimi üzerinde daha ayrıntılı denetim sağlayan aşağıdaki msdb
veritabanı sabit veritabanı rollerine sahiptir. En az ayrıcalıklı erişimden en fazla ayrıcalıklı erişime kadar listelenen roller şunlardır:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
Bu rollerden birinin üyesi olmayan kullanıcılar SQL Server Management Studio'da SQL Server'a bağlandığında, Nesne Gezgini'ndeki SQL Server Agent düğümü görünmez. Kullanıcının SQL Server Aracısı'nı kullanmak için bu sabit veritabanı rollerinden birinin veya sysadmin sabit sunucu rolünün üyesi olması gerekir.
SQL Server Aracısı sabit veritabanı rollerinin izinleri
SQL Server Aracısı veritabanı rol izinleri birbirine göre eşmerkezlidir. Başka bir deyişle, daha ayrıcalıklı roller SQL Server Agent nesnelerinde (uyarılar, işleçler, işler, zamanlamalar ve ara sunucular dahil) daha az ayrıcalıklı rollerin izinlerini devralır. Örneğin, en az ayrıcalıklı SQLAgentUserRole üyelerine proxy_A
erişimi verilmişse, her ne kadar proxy_A
erişimi kendilerine açıkça verilmemiş olsa da, hem SQLAgentReaderRole hem de SQLAgentOperatorRole üyeleri bu proxy'ye otomatik olarak erişim izni kazanır. Bunun, her rolle ilgili aşağıdaki bölümlerde ele alınan güvenlik etkileri olabilir.
SQLAgentUserRole izinleri
SQLAgentUserRole, SQL Server Agent'in sabit veritabanı rollerinden en az ayrıcalığa sahip olanıdır. Yalnızca işleçler, yerel işler ve iş zamanlamaları üzerinde izinleri vardır. SQLAgentUserRole üyelerinin yalnızca sahip oldukları yerel işler ve iş zamanlamaları üzerinde izinleri vardır. Çok sunuculu işleri (ana ve hedef sunucu işleri) kullanamazlar ve sahip olmadığı işlere erişim elde etmek için iş sahipliğini değiştiremezler. SQLAgentUserRole üyeleri kullanılabilir proxy'lerin listesini yalnızca SQL Server Management Studio'nun İş Adımı Özellikleri iletişim kutusunda görüntüleyebilir. SQL Server Management Studio Nesne Gezgini'nde yalnızca Görevler düğümü, SQLAgentUserRoleüyeleri tarafından görülebilir.
Önemli
SQLAgentReaderRole ve SQLAgentOperatorRole otomatik olarak SQLAgentUserRoleüyesidir. Bu, SQLAgentReaderRole ve SQLAgentOperatorRole üyelerinin SQLAgentUserRole verilmiş olan tüm SQL Server Agent proxy'lerine erişimi olduğu ve bu proxy'leri kullanabileceği anlamına gelir.
Aşağıdaki tabloda SQL Server Agent nesneleri üzerindeki SQLAgentUserRole izinleri özetlenmiştir.
Eylem | Operatörler | Yerel işler (yalnızca sahip olunan işler) | İş programları (yalnızca kendi programlarınız) | Proxy 'leri |
---|---|---|---|---|
Oluşturma/değiştirme/silme | Hayır | Evet İş sahipliğini değiştiremezsiniz. |
Evet | Hayır |
Liste görüntüle (numaralandır) | Evetsp_notify_operator 'de kullanılabilecek işleçlerin listesini ve Management Studio'daki İş Özellikleri iletişim kutusunu alabilirsiniz. |
Evet | Evet | Evet Proxy'ler listesi yalnızca Management Studio'nun İş Adımı Özellikleri iletişim kutusunda kullanılabilir. |
Etkinleştir/devre dışı bırak | Hayır | Evet | Evet | Uygulanamaz |
Özellikleri görüntüleme | Hayır | Evet | Evet | Hayır |
Yürütme/durdurma/başlatma | Uygulanamaz | Evet | Uygulanamaz | Uygulanamaz |
İş geçmişini görüntüleme | Uygulanamaz | Evet | Uygulanamaz | Uygulanamaz |
İş geçmişini silme | Uygulanamaz | Hayır SQLAgentUserRole üyelerine, sahip oldukları işlerde iş geçmişini silebilmeleri için sp_purge_jobhistory üzerinde EXECUTE izni açıkça verilmelidir. Başka hiçbir işin iş geçmişini silemezler. |
Uygulanamaz | Uygulanamaz |
Ekleme/ayırma | Uygulanamaz | Uygulanamaz | Evet | Uygulanamaz |
SQLAgentReaderRole izinleri
SQLAgentReaderRole tüm SQLAgentUserRole izinlerinin yanı sıra kullanılabilir çok sunuculu işlerin listesini, özelliklerini ve geçmişini görüntüleme izinlerini içerir. Bu rolün üyeleri, yalnızca sahip oldukları işleri ve iş zamanlamalarını değil tüm kullanılabilir işlerin ve iş zamanlamalarının ve bunların özelliklerinin listesini de görüntüleyebilir. SQLAgentReaderRole üyeleri henüz sahip olmadığı işlere erişim kazanmak için iş sahipliğini değiştiremez. Yalnızca SQLAgentReaderRoleüyeleri, SQL Server Management Studio Nesne Gezgini'ndeki İşleri düğümünü görebilir.
Önemli
SQLAgentReaderRole üyeleri otomatik olarak SQLAgentUserRoleüyesidir. Bu, SQLAgentReaderRole üyelerinin SQLAgentUserRole verilmiş olan tüm SQL Server Aracısı proxy'lerine erişimi olduğu ve bu proxy'leri kullanabileceği anlamına gelir.
Aşağıdaki tabloda SQL Server Agent nesneleri üzerinde SQLAgentReaderRole izinleri özetlenmiştir.
Eylem | Operatörler | Yerel işler | Çok sunuculu işler | İş zamanlamaları | Proxy 'leri |
---|---|---|---|---|---|
Oluşturma/değiştirme/silme | Hayır | Evet (yalnızca sahip olunan işler) İş sahipliğini değiştiremezsiniz. |
Hayır | Evet (yalnızca sahip olunan programlar) | Hayır |
Liste görüntüle (numaralandır) | Evetsp_notify_operator 'da kullanılabilecek işleçlerin ve Management Studio'nun İş Özellikleri iletişim kutusundaki işleç listesini edinebilirsiniz. |
Evet | Evet | Evet | Evet Proxy'ler listesi yalnızca Management Studio'nun İş Adımı Özellikleri iletişim kutusunda kullanılabilir. |
Etkinleştir/devre dışı bırak | Hayır | Evet (sadece sahip olunan işler) | Hayır | Evet (yalnızca sahip olunan zamanlamalar) | Uygulanamaz |
Özellikleri görüntüleme | Hayır | Evet | Evet | Evet | Hayır |
Özellikleri düzenleme | Hayır | Evet (sadece sahip olunan işler) | Hayır | Evet (yalnızca sahip olunan programlar) | Hayır |
Yürütme/durdurma/başlatma | Uygulanamaz | Evet (sadece sahip olunan işler) | Hayır | Uygulanamaz | Uygulanamaz |
İş geçmişini görüntüleme | Uygulanamaz | Evet | Evet | Uygulanamaz | Uygulanamaz |
İş geçmişini silme | Uygulanamaz | Hayır SQLAgentReaderRole üyelerinin, sahip oldukları işlerin geçmişini silebilmeleri için sp_purge_jobhistory üzerinde EXECUTE izni açıkça verilmelidir. Diğer herhangi bir işin iş geçmişini silemezler. |
Hayır | Uygulanamaz | Uygulanamaz |
Ekleme/ayırma | Uygulanamaz | Uygulanamaz | Uygulanamaz | Evet (yalnızca sahip olunan programlar) | Uygulanamaz |
SQLAgentOperatorRole izinleri
SQLAgentOperatorRole, SQL Server Aracısı sabit veritabanı rollerinin en ayrıcalıklısıdır. SQLAgentUserRole ve SQLAgentReaderRoletüm izinlerini içerir. Bu rolün üyeleri ayrıca işleçler ve ara sunucuların özelliklerini görüntüleyebilir ve sunucudaki kullanılabilir proxy'leri ve uyarıları numaralandırabilir.
SQLAgentOperatorRole üyelerinin yerel işler ve zamanlamalar üzerinde ek izinleri vardır. Tüm yerel işleri yürütebilir, durdurabilir veya başlatabilir ve sunucudaki herhangi bir yerel işin iş geçmişini silebilirler. Ayrıca, sunucudaki tüm yerel işleri ve zamanlamaları etkinleştirebilir veya devre dışı bırakabilirler. Yerel işleri veya zamanlamaları etkinleştirmek veya devre dışı bırakmak için, bu rolün üyeleri sp_update_job
ve sp_update_schedule
saklı yordamlarını kullanmalıdır. Yalnızca işi veya zamanlama adını veya tanımlayıcısını belirten parametreler ve @enabled
parametresi SQLAgentOperatorRoleüyeleri tarafından belirtilebilir. Başka parametreler belirtirlerse, bu saklı yordamların yürütülmesi başarısız olur.
SQLAgentOperatorRole üyeleri henüz sahip olmadığı işlere erişim kazanmak için iş sahipliğini değiştiremez.
İşleri, Uyarılar, İşleçlerive SQL Server Management Studio Nesne Gezgini'ndeki Proxy'ler düğümleri SQLAgentOperatorRoleüyeleri tarafından görülebilir. Bu rolün üyeleri yalnızca Hata Günlükleri düğümünü göremez.
Önemli
SQLAgentOperatorRole üyeleri otomatik olarak SQLAgentUserRole ve SQLAgentReaderRoleüyeleridir. Bu, SQLAgentOperatorRole üyelerinin, SQLAgentUserRole veya SQLAgentReaderRole'ye verilmiş olan tüm SQL Server Aracısı proxy'lerine erişimi olduğu ve bu proxy'leri kullanabileceği anlamına gelir.
Aşağıdaki tabloda SQLAgentOperatorRole izinleri SQL Server Agent nesneleri üzerinde özetlenmiştir.
Eylem | Uyarı | Operatörler | Yerel işler | Çok sunuculu işler | İş zamanlamaları | Proxy 'leri |
---|---|---|---|---|---|---|
Oluşturma/değiştirme/silme | Hayır | Hayır | Evet (sadece sahip olunan işler) İş sahipliğini değiştiremezsiniz. |
Hayır | Evet (yalnızca sahip olunan programlar) | Hayır |
Liste görüntüle (numaralandır) | Evet | Evetsp_notify_operator 'de kullanılabilecek işleçlerin listesini ve Management Studio'nun İş Özellikleri iletişim kutusunu alabilir. |
Evet | Evet | Evet | Evet |
Etkinleştir/devre dışı bırak | Hayır | Hayır | Evet SQLAgentOperatorRole üyeleri saklı yordam sp_update_job kullanarak ve @enabled ve @job_id (veya @job_name ) parametreleri için değerler belirterek sahip olmadığı yerel işleri etkinleştirebilir veya devre dışı bırakabilir. Bu rolün bir üyesi bu saklı yordam için başka parametreler belirtirse, yordamın yürütülmesi başarısız olur. |
Hayır | Evet SQLAgentOperatorRole üyeleri saklı yordam sp_update_schedule kullanarak ve @enabled ve @schedule_id (veya @name ) parametreleri için değerler belirterek sahip olmadığı zamanlamaları etkinleştirebilir veya devre dışı bırakabilir. Bu rolün bir üyesi bu saklı yordam için başka parametreler belirtirse, yordamın yürütülmesi başarısız olur. |
Uygulanamaz |
Özellikleri görüntüleme | Evet | Evet | Evet | Evet | Evet | Evet |
Özellikleri düzenleme | Hayır | Hayır | Evet (sahip olunan işler yalnızca) | Hayır | Evet (yalnızca sahip olunan programlar) | Hayır |
Yürütme/durdurma/başlatma | Uygulanamaz | Uygulanamaz | Evet | Hayır | Uygulanamaz | Uygulanamaz |
İş geçmişini görüntüleme | Uygulanamaz | Uygulanamaz | Evet | Evet | Uygulanamaz | Uygulanamaz |
İş geçmişini silme | Uygulanamaz | Uygulanamaz | Evet | Hayır | Uygulanamaz | Uygulanamaz |
Ekleme/ayırma | Uygulanamaz | Uygulanamaz | Uygulanamaz | Uygulanamaz | Evet (yalnızca sahip olunan zamanlamalar) | Uygulanamaz |
Kullanıcılara birden çok rol atama
sysadmin sabit sunucu rolünün üyeleri tüm SQL Server Aracısı işlevlerine erişebilir. Kullanıcı sysadmin rolünün üyesi değilse ancak birden fazla SQL Server Aracısı sabit veritabanı rolünün üyesiyse, bu rollerin eşmerkezli izin modelini hatırlamak önemlidir. Daha ayrıcalıklı roller her zaman daha az ayrıcalıklı rollerin tüm izinlerini içerdiğinden, birden fazla rolün üyesi olan bir kullanıcı otomatik olarak kullanıcının üyesi olduğu en ayrıcalıklı rolle ilişkili izinlere sahiptir.