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


sp_grant_proxy_to_subsystem (Transact-SQL)

Область применения: SQL Server

Предоставляет подсистеме доступ к учетной записи-посреднику.

Соглашения о синтаксисе Transact-SQL

Синтаксис

sp_grant_proxy_to_subsystem
    [ [ @proxy_id = ] proxy_id ]
    [ , [ @proxy_name = ] N'proxy_name' ]
    [ , [ @subsystem_id = ] subsystem_id ]
    [ , [ @subsystem_name = ] N'subsystem_name' ]
[ ; ]

Аргументы

[ @proxy_id = ] proxy_id

Идентификационный номер учетной записи-посредника, к которой предоставляется доступ. @proxy_id имеет значение int с значением по умолчаниюNULL.

Необходимо указать @proxy_id или @proxy_name, но их нельзя указать.

[ @proxy_name = ] N'proxy_name'

Имя учетной записи-посредника, к которой предоставляется доступ. @proxy_name — sysname с значением по умолчаниюNULL.

Необходимо указать @proxy_id или @proxy_name, но их нельзя указать.

[ @subsystem_id = ] subsystem_id

Идентификатор подсистемы для предоставления доступа. @subsystem_id имеет значение int, при этом значение по умолчанию NULLравно .

Необходимо указать @subsystem_id или @subsystem_name, но их нельзя указать.

В следующей таблице показаны значения для каждой подсистемы.

значение Описание
2 Сценарий ActiveX 1
3 Операционная система (CmdExec)
4 Агент моментальных снимков репликации
5 Replication Log Reader Agent
6 Агент распространения репликации
7 Replication Merge Agent
8 Replication Queue Reader Agent
9 Запрос служб Analysis Services
10 Команда служб Analysis Services
11 Выполнение пакетов служб SSIS
12 Скрипт PowerShell

1 Эта функция будет удалена в будущей версии SQL Server. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется.

[ @subsystem_name = ] N'subsystem_name'

Имя подсистемы, которой предоставляется доступ. @subsystem_name имеет имя sysname с значением по умолчаниюNULL.

Необходимо указать @subsystem_id или @subsystem_name, но их нельзя указать.

В следующей таблице показаны значения для каждой подсистемы.

значение Описание
ActiveScripting ActiveX-скрипт
CmdExec Операционная система (CmdExec)
Snapshot Агент моментальных снимков репликации
LogReader Replication Log Reader Agent
Distribution Агент распространения репликации
Merge Replication Merge Agent
QueueReader Replication Queue Reader Agent
ANALYSISQUERY Запрос служб Analysis Services
ANALYSISCOMMAND Команда служб Analysis Services
Dts Выполнение пакетов служб SSIS
PowerShell Скрипт PowerShell

Замечания

Предоставление прокси-доступа к подсистеме не изменяет разрешения для субъекта, указанного в прокси-сервере.

Разрешения

Эта хранимая процедура принадлежит роли db_owner . Вы можете предоставить EXECUTE разрешения для любого пользователя, но эти разрешения могут быть переопределены во время обновления SQL Server.

Примеры

А. Предоставление доступа к подсистеме по идентификатору

В следующем примере предоставляется доступ к учетной записи-посреднику Catalog application proxy подсистеме «Сценарий ActiveX».

USE msdb;
GO

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

B. Предоставление доступа к подсистеме по имени

В следующем примере учетной записи-посреднику Catalog application proxy предоставляется доступ к подсистеме «Выполнение пакета служб SSIS».

USE msdb;
GO

EXEC dbo.sp_grant_proxy_to_subsystem
    @proxy_name = N'Catalog application proxy',
    @subsystem_name = N'Dts' ;
GO