Поделиться через


Создание прокси-сервера агента SQL Server

В этом разделе описывается создание прокси-сервера агента SQL Server в SQL Server 2014 с помощью SQL Server Management Studio или Transact-SQL.

Учетная запись прокси-сервера агента SQL Server определяет контекст безопасности, в котором может выполняться шаг задания. Каждый прокси-сервер соответствует учетным данным безопасности. Чтобы задать разрешения для определенного шага задания, создайте прокси-сервер с необходимыми разрешениями для подсистемы агента SQL Server, а затем назначьте этот прокси-сервер шагу задания.

В этом разделе

Перед началом работы

Ограничения и условия

  • Перед созданием прокси необходимо создать учетные данные, если они еще недоступны.

  • Прокси-серверы агента SQL Server используют учетные данные для хранения сведений об учетных записях пользователей Windows. Пользователь, указанный в учетных данных, должен иметь разрешение "Вход для выполнения пакетных заданий" на компьютере, на котором работает SQL Server.

  • Агент SQL Server проверяет доступ подсистемы для прокси-сервера и предоставляет доступ к прокси-серверу при каждом запуске шага задания. Если прокси-сервер больше не имеет доступа к подсистеме, шаг задания завершается сбоем. В противном случае агент SQL Server олицетворяет пользователя, указанного в прокси-сервере, и запускает шаг задания.

  • Создание прокси-сервера не изменяет разрешения для пользователя, указанного в учетных данных прокси-сервера. Например, можно создать прокси-сервер для пользователя, который не имеет разрешения на подключение к экземпляру SQL Server. В этом случае шаги задания, использующие этот прокси-сервер, не могут подключиться к SQL Server.

  • Если пользователю предоставлен доступ к прокси-серверу или он принадлежит к любой роли с доступом к прокси-серверу, то он может использовать прокси-сервер на этапе выполнения задания.

Безопасность

Разрешения

  • Только члены предопределенной роли сервера sysadmin имеют разрешение на создание, изменение или удаление учетных записей прокси-сервера. Пользователи, не являющиеся членами предопределенной роли сервера sysadmin, должны быть добавлены в одну из следующих предопределенных ролей агента SQL Server в базе данных msdb для использования прокси-серверов: SQLAgentUserRole, SQLAgentReaderRole или SQLAgentOperatorRole.

  • Для создания учетных данных в дополнение к прокси требуется разрешение ALTER ANY CREDENTIAL.

Использование среды SQL Server Management Studio

Создание прокси-сервера агента SQL Server

  1. В обозревателе объектов щелкните знак "плюс", чтобы развернуть сервер, где требуется создать прокси-сервер в агенте SQL Server.

  2. Щелкните знак «плюс», чтобы развернуть SQL Server Agent.

  3. Щелкните правой кнопкой мыши папку прокси-сервера и выберите Создать прокси-сервер.

  4. В диалоговом окне новая прокси-учетная запись на странице общие введите имя прокси-учетной записи в поле имя прокси-учетной записи.

  5. В поле имени учетных данных введите имя учетных данных безопасности, которые будет использовать прокси-аккаунт.

  6. В поле описание введите описание учетной записи прокси-сервера.

  7. В разделе "Активный" для следующих подсистемвыберите соответствующую подсистему или несколько подсистем для этого прокси.

  8. На странице субъектов добавьте или удалите имена входа или роли, чтобы предоставить или удалить доступ к прокси-аккаунту.

  9. После завершения нажмите кнопку ОК.

Использование Transact-SQL

Создание прокси-сервера агента SQL Server

  1. В обозревателе объектов подключитесь к экземпляру ядра СУБД.

  2. На стандартной панели выберите пункт Создать запрос.

  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.

    -- creates credential CatalogApplicationCredential  
    USE msdb ;  
    GO  
    CREATE CREDENTIAL CatalogApplicationCredential WITH IDENTITY = 'REDMOND/TestUser',   
        SECRET = 'G3$1o)lkJ8HNd!';  
    GO  
    -- creates proxy "Catalog application proxy" and assigns the credential 'CatalogApplicationCredential' to it.  
    EXEC dbo.sp_add_proxy  
        @proxy_name = 'Catalog application proxy',  
        @enabled = 1,  
        @description = 'Maintenance tasks on catalog application.',  
        @credential_name = 'CatalogApplicationCredential' ;  
    GO  
    -- grants the proxy "Catalog application proxy" access to the ActiveX Scripting subsystem.  
    EXEC dbo.sp_grant_proxy_to_subsystem  
        @proxy_name = N'Catalog application proxy',  
        @subsystem_id = 2 ;  
    GO  
    

Дополнительные сведения можно найти здесь