#sql #sql-server-2008 #file-access #xp-cmdshell
#sql #sql-server-2008 #доступ к файлам #xp-cmdshell
Вопрос:
Я пытаюсь получить доступ к папке / каталогу, используя ‘EXEC MASTER..XP_CMDSHELL’, он работает для локального файла / папки, однако он не может получить доступ к папке по сети.
EXEC MASTER..XP_CMDSHELL 'c:Images' --Works fine
EXEC MASTER..XP_CMDSHELL '\IPaddressImages' -- returns "Access is denied."
Пожалуйста, обратите внимание, что я могу получить доступ к сетевому местоположению, но не с помощью sql server.
Sql server работает в режиме аутентификации Winodws. Sql server использует учетную запись «nt authority network service» для доступа к удаленной папке.
С уважением
Ответ №1:
Если вы запустите xp_cmdshell ‘whoami.exe «он сообщит вам, под какой учетной записью работает команда. Если у этой учетной записи нет разрешений в сети, вы получите сообщение об ошибке, которое вы видите.
Проверьте документацию SQL для изменения этой учетной записи / разрешений.
Ответ №2:
Когда вам нужно поместить файл, например, результат BCP, или резервную копию на удаленный диск, просто сопоставьте этот диск с Windows, не работает, он должен быть сопоставлен на SQL Server с!, для этого попробуйте использовать такую ссылку:
exec xp_cmdshell ‘net use p: Server Folder Папка Папка / Домен Логин / пароль’