Aracılığıyla paylaş


SQL Server Aracısı ara sunucusu oluşturma

Şunlar için geçerlidir: SQL Server

Bu makalede, SQL Server Management Studio veya Transact-SQL kullanarak SQL Server'da SQL Server Aracısı ara sunucusunun nasıl oluşturulacağı açıklanır.

SQL Server Aracısı proxy hesabı, bir iş adımının çalıştırabileceği bir güvenlik bağlamı tanımlar. Her ara sunucu bir güvenlik kimlik bilgilerine karşılık gelir. Belirli bir iş adımının izinlerini ayarlamak için, SQL Server Agent alt sistemi için gerekli izinlere sahip bir ara sunucu oluşturun ve ardından bu proxy'yi iş adımına atayın.

Önemli

Azure SQL Managed Instanceüzerinde, SQL Server Agent özelliklerinin çoğu şu anda desteklenmektedir fakat hepsi değil. Ayrıntılar için bkz. SQL Yönetilen Örneği'nde SQL Server veya SQL Aracısı iş sınırlamalarından Azure SQL Yönetilen Örneği T-SQL farkları .

Sınırlamalar

Bir ara sunucu oluşturmadan önce bir kimlik bilgisi oluşturmanız gerekir( zaten kullanılamıyorsa).

SQL Server Aracısı proxy'leri, Windows kullanıcı hesapları hakkındaki bilgileri depolamak için kimlik bilgilerini kullanır. Kimlik bilgisinde belirtilen kullanıcının, SQL Server'ın çalıştığı bilgisayarda bu bilgisayara ağ izninden (SeNetworkLogonRight) erişmesi gerekir.

SQL Server Aracısı bir ara sunucu için alt sistem erişimini denetler ve iş adımı her çalıştığında ara sunucuya erişim verir. Ara sunucu artık alt sisteme erişemiyorsa, iş adımı başarısız olur. Aksi takdirde, SQL Server Aracısı proxy'de belirtilen kullanıcının kimliğine bürünür ve iş adımını çalıştırır. Ara sunucu alt sistemlerinin listesi için bkz. sp_grant_proxy_to_subsystem.

Ara sunucu oluşturma işlemi, proxy'nin kimlik bilgisinde belirtilen kullanıcının izinlerini değiştirmez. Örneğin, SQL Server örneğine bağlanma izni olmayan bir kullanıcı için ara sunucu oluşturabilirsiniz. Bu durumda, bu ara sunucuyu kullanan iş adımları SQL Server'a bağlanamaz.

Kullanıcının oturum açma işleminin ara sunucuya erişimi varsa veya kullanıcı ara sunucuya erişimi olan herhangi bir role aitse, kullanıcı proxy'yi bir iş adımında kullanabilir.

İzinler

Yalnızca sysadmin sabit sunucu rolünün üyeleri ara sunucu hesapları oluşturma, değiştirme veya silme iznine sahiptir. Sysadmin sabit sunucu rolünün üyesi olmayan kullanıcıların proxy'leri kullanmak için veritabanında aşağıdaki SQL Server Agent sabit veritabanı rollerinden msdb birine eklenmesi gerekir:

SQLAgentUserRoleSQLAgentReaderRoleSQLAgentOperatorRole

ALTER ANY CREDENTIAL Ara sunucuya ek olarak bir kimlik bilgisi oluştururken izin gerektirir.

SQL Server Management Studio'yu (SSMS) kullanma

  1. Nesne Gezgini'nde artı işaretini seçerek SQL Server Aracısı'nda ara sunucu oluşturmak istediğiniz sunucuyu genişletin.

  2. SQL Server Agent'i genişletmek için artı işaretini seçin.

  3. Proxy'ler klasörüne sağ tıklayın ve Yeni Ara Sunucu'yu seçin.

  4. Yeni Ara Sunucu Hesabı iletişim kutusunun Genel sayfasında Ara sunucu adı kutusuna proxy hesabının adını girin.

  5. Kimlik bilgisi adı kutusuna ara sunucu hesabının kullanacağı güvenlik kimlik bilgilerinin adını girin.

  6. Açıklama kutusuna proxy hesabı için bir açıklama girin

  7. Aşağıdaki alt sistemlerde etkin altında, bu ara sunucu için uygun alt sistemi veya alt sistemleri seçin.

  8. Sorumluları sayfasında, proxy hesabına erişim vermek veya kaldırmak için oturum açma bilgilerini veya rolleri ekleyin veya kaldırın.

  9. İşiniz bittiğinde Tamamseçin.

Transact-SQL kullanma

Aşağıdaki betik adlı CatalogApplicationCredentialbir kimlik bilgisi oluşturur, ara sunucu Catalog application proxy oluşturur ve kimlik bilgilerini CatalogApplicationCredential ona atar ve proxy'ye ActiveX Betik alt sistemine erişim verir.

  1. Kimlik bilgisi CatalogApplicationCredentialoluşturun.

    USE msdb;
    GO
    
    CREATE CREDENTIAL CatalogApplicationCredential
        WITH IDENTITY = 'REDMOND/TestUser', SECRET = 'G3$1o)lkJ8HNd!';
    GO
    
  2. Ara sunucu Catalog application proxy oluşturun ve kimlik bilgilerini CatalogApplicationCredential ona atayın.

    EXECUTE dbo.sp_add_proxy
        @proxy_name = 'Catalog application proxy',
        @enabled = 1,
        @description = 'Maintenance tasks on catalog application.',
        @credential_name = 'CatalogApplicationCredential';
    GO
    
  3. ActiveX Betik alt sistemine ara sunucu Catalog application proxy erişimi verin.

    EXECUTE dbo.sp_grant_proxy_to_subsystem
        @proxy_name = N'Catalog application proxy',
        @subsystem_id = 2;
    GO