2017-02-15 10 views
1

Одно из наших заданий, которое запускает пакет SSIS для удаления файлов со сценарием (C# File.Delete), ведет себя странным образом ниже. Может ли кто-нибудь помочь нам понять причину этого?Работа агента SQL Server - SSIS - C# - «Доступ запрещен» при попытке удалить файлы

Ниже приведены основные условия:
1. Учетная запись входа SQL Server Service Agent в: DomainA \ AAA
2. Владелец вакансии: DomainA \ AAA
3. DomainA \ AAA является членом местных «Администраторы "группа

То, что мы обнаружили, странно:
работа завершается с сообщением„доступ к пути E: \ XXXX \ pp.csv запрещен“, когда полный контроль доступа предоставляется только„Администраторы“окна группы и успехи когда полный доступ к управлению предоставляется непосредственно пользователю Windows «DomainA \ AAA».

Перед сообщением об ошибке выше, он говорит: «Этот шаг был выполнен как: DomainA \ AAA».

Version Info:
SQL Server 2008 с пакетом обновления 2 (10.0.4000)
Windows 2003 R2 x64 SP2

Примечание:
1. сообщения на английском языке выше мой собственный перевод с нашего языка, и это не будет быть точно одинаковыми в английской версии.
2. Пакет SSIS упрощен для выполнения одной задачи скрипта только для тестирования.

+0

Говорят, почему было отказано в доступе? Обычно я вижу это, когда у меня открыт файл. Ваша программа работает как администратор? –

+0

Спасибо за быстрый ответ. Задание выполняется DomainA \ AAA, которое входит в группу «Администраторы». Не могли бы вы сообщить нам, в чем разница между предоставлением доступа «Полный контроль» к пользователю напрямую и к группе, к которой принадлежит пользователь? – yobioo

ответ

1

Прочтите этот блог, чтобы получить информацию о разрешении на этот каталог и файл. Надеюсь, этот код поможет вам узнать, какие разрешения вам нужно назначить для этого пользователя. http://craigot.blogspot.com/2012/09/ssis-checking-filefolder-permissions.html

+0

Спасибо Shuvankar, я попробовал код, и результат был «System.UnauthorizedAccessException: Пользователь (учетная запись входа в службу агента) не имеет разрешения на чтениеДата из папки E: \ XXX», хотя учетная запись является членом Администраторов, а администраторы имеют Полный доступ Доступ к папке. Фактически, после того, как я сам предоставил пользователю полный доступ к папке, он безуспешно. Трудно понять, как работа агента может, по крайней мере, прочитать файл в папке. – yobioo

2

Вы можете проверить погоду в папке, которую вы предоставили для всех администраторов (для чтения и записи). Если это не работает, пожалуйста, измените папку и попробуйте один раз.

+0

Да, я дал разрешение на полный доступ для группы «Администраторы», но это не сработало, хотя, как только я дал разрешение на полный доступ к самому пользователю, он сработал. – yobioo