У меня есть пользователь сервера sql, proxyAccount, который я настроил как xp_cmdshell_proxy_account
.
В хранимой процедуре я использую xp_cmdshell
, и когда я выполняю хранимую процедуру с этой учетной записью, все работает нормально.
Однако, если я добавлю:
WITH EXECUTE AS 'proxyAccount'
к хранимой процедуре, я получаю следующую ошибку при ее выполнении:
Информация об учетной записи прокси-сервера xp_cmdshell не может быть получена или недействительна. Убедитесь, что учетные данные '##xp_cmdshell_proxy_account##' существуют и содержат допустимую информацию.
В чем может быть проблема? Почему proxyAccount не может запустить xp_cmdshell
, если установлено значение ВЫПОЛНЯТЬ КАК, но может запустить его в противном случае?