Aracılığıyla paylaş


SQL Server Aracısı sabit veritabanı rolleri

Şunlar için geçerlidir:SQL ServerAzure 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_Aeriş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) Evet

sp_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) Evet

sp_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_schedulesaklı 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 Evet

sp_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.