Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Доступ учетки MSSQL к файлам  [new]
Senya_L
Member

Откуда: Москва
Сообщений: 5381
Разбирался тут с доступом к файлам для оператора BULK INSERT. Столкнулся с непонятной вещью. Возможно, этот вопрос для ветки Windows, но все ж таки спрошу здесь.

Ситуация такая. Создал папку, в нее поместил текстовый файл. Выполняю
truncate table social;

bulk insert social from 'f:\temp\111.txt'
with(codepage='acp');
Все работает. Теперь отзываю права доступа к папке и файлу 111.txt у всех кроме себя самого (допустим, учетка SHOME\senya). Опять выполняется без ошибок, хотя экземпляр MSSQL работает по втроенной учеткой NETWORK SERVICE.
Дальше интереснее. Создаю логин SHOME\lena на основе непривилегированной Windows-учетки, включаю ее в роль sysadmin. Войдя под этим именем загрузку осуществить не получается, выдается закономерная ошибка
Msg 4861, Level 16, State 1, Line 3
Массовая загрузка невозможна, так как файл "f:\temp\111.txt" не удалось открыть. Код ошибки операционной системы 5(Отказано в доступе.).
Далее даю разрешение на доступ к папке и файлу для SHOME\lena. И после этого массовая загрузка проходит нормально. Это что же получается, сервер получает доступ от имени подключившегося логина? По всем признакам да, но как-то это непонятно лично мне. Может кто-нибудь объяснить?
12 июн 10, 11:30    [8934710]     Ответить | Цитировать Сообщить модератору
 Re: Доступ учетки MSSQL к файлам  [new]
iljy
Member

Откуда:
Сообщений: 8711
Senya_L,

все объяснит БОЛ. Массовый импорт данных при помощи инструкции BULK INSERT или OPENROWSET(BULK...) - Вопросы безопасности
12 июн 10, 12:07    [8934752]     Ответить | Цитировать Сообщить модератору
 Re: Доступ учетки MSSQL к файлам  [new]
Senya_L
Member

Откуда: Москва
Сообщений: 5381
iljy
Senya_L,

все объяснит БОЛ. Массовый импорт данных при помощи инструкции BULK INSERT или OPENROWSET(BULK...) - Вопросы безопасности
Да, теперь понятнее.
12 июн 10, 12:19    [8934769]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Доступ учетки MSSQL к файлам  [new]
M-stlyle
Member

Откуда:
Сообщений: 101
DECLARE @XML AS XML, @hDoc AS INT, @SQL NVARCHAR (MAX)
SELECT @XML = CONVERT(XML, BulkColumn) FROM OPENROWSET(BULK '\\server\folder\file1.xml', SINGLE_BLOB) AS x;


если запускаю этот скрипт локально на сервере где стоит SQL - то работает.
Под тем же пользователем запускаю скрипт удаленно, с другого компьютера - "Код ошибки операционной системы 5(Отказано в доступе.)"
Пробовал в процедуру вставить - тоже самое.

работает ли такая конструкция удаленно, или с правами какой-то косяк? хотя не знаю что уже смотреть, аудитов нет, доступ к папке полный у группы "Все"
15 апр 17, 09:11    [20404103]     Ответить | Цитировать Сообщить модератору
 Re: Доступ учетки MSSQL к файлам  [new]
aleks2
Guest
M-stlyle
DECLARE @XML AS XML, @hDoc AS INT, @SQL NVARCHAR (MAX)
SELECT @XML = CONVERT(XML, BulkColumn) FROM OPENROWSET(BULK '\\server\folder\file1.xml', SINGLE_BLOB) AS x;


если запускаю этот скрипт локально на сервере где стоит SQL - то работает.
Под тем же пользователем запускаю скрипт удаленно, с другого компьютера - "Код ошибки операционной системы 5(Отказано в доступе.)"
Пробовал в процедуру вставить - тоже самое.

работает ли такая конструкция удаленно, или с правами какой-то косяк? хотя не знаю что уже смотреть, аудитов нет, доступ к папке полный у группы "Все"


Косяк не с правами - косяк в голове.

1. Нибось Trusted Connection?
2. Первое, что необходимо осознать: даже если MS SQL верит что "это Вася" - операционная система не обязана этому верить.
3. При попытке доступа к файловой системе ОСь запрашивает авторизацию, т.е. имя и ПАРОЛЬ.
4. Ваш ПАРОЛЬ серверу неизвестен.
5. Отсюда - облом.
6. Под учетными данными службы MS SQL теперь принципиально НИКУДА не лезет.
7. Так получается, что вы не Все - вы НИКТО.

ЗЫ. Учи delegation.
15 апр 17, 11:17    [20404211]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Доступ учетки MSSQL к файлам  [new]
_Gavrysh_
Member

Откуда:
Сообщений: 130
Добрый день.
Есть скажем учётная запись Домен\User с правами администратора домена и администратора SQL. Есть полный доступ к определённой
сетевой папке и её файлам \\Server\Папка\111.csv. Запускаю среду Management Studio и захожу на SQL сервер по учётной записью Домен\User. Выполняю BULK INSERT My_Table FROM \\\Server\Папка\111.csv. Получаю:
Массовая загрузка невозможна, так как файл "\\Server\Папка\111.csv" не удалось открыть. Код ошибки операционной системы 5(Отказано в доступе.). Если файлы там же где и SQL сервет то всё работает. Вопрос может идиотский, но согласно сказанному ранее и инструкции, то должно работать.Куда ещё обратить внимание?
5 дек 19, 11:56    [22032985]     Ответить | Цитировать Сообщить модератору
 Re: Доступ учетки MSSQL к файлам  [new]
1C Developer
Member

Откуда:
Сообщений: 65
_Gavrysh_
Добрый день.
Есть скажем учётная запись Домен\User с правами администратора домена и администратора SQL. Есть полный доступ к определённой
сетевой папке и её файлам \\Server\Папка\111.csv. Запускаю среду Management Studio и захожу на SQL сервер по учётной записью Домен\User. Выполняю BULK INSERT My_Table FROM \\\Server\Папка\111.csv. Получаю:
Массовая загрузка невозможна, так как файл "\\Server\Папка\111.csv" не удалось открыть. Код ошибки операционной системы 5(Отказано в доступе.). Если файлы там же где и SQL сервет то всё работает. Вопрос может идиотский, но согласно сказанному ранее и инструкции, то должно работать.Куда ещё обратить внимание?


Доступ к файлу осуществляется в данном случае не под правами Вашей учетной записи (Домен\User), а под правами с которыми запущенна служба SQL сервера.
5 дек 19, 12:00    [22032991]     Ответить | Цитировать Сообщить модератору
 Re: Доступ учетки MSSQL к файлам  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
1C Developer

Доступ к файлу осуществляется в данном случае не под правами Вашей учетной записи (Домен\User), а под правами с которыми запущенна служба SQL сервера.

нет, не лезет он под серверной учеткой.
и выше уже написана причина ошибки:
не настроен delegation
5 дек 19, 12:14    [22033005]     Ответить | Цитировать Сообщить модератору
 Re: Доступ учетки MSSQL к файлам  [new]
_Gavrysh_
Member

Откуда:
Сообщений: 130
Yasha123,

"не настроен delegation"

а где он настраивается?
5 дек 19, 12:16    [22033007]     Ответить | Цитировать Сообщить модератору
 Re: Доступ учетки MSSQL к файлам  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
_Gavrysh_

а где он настраивается?

в винде
5 дек 19, 12:17    [22033010]     Ответить | Цитировать Сообщить модератору
 Re: Доступ учетки MSSQL к файлам  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
SQL Server Kerberos and SPN Quick Reference
с картинками
5 дек 19, 12:22    [22033017]     Ответить | Цитировать Сообщить модератору
 Re: Доступ учетки MSSQL к файлам  [new]
_Gavrysh_
Member

Откуда:
Сообщений: 130
Yasha123,
Про делегирование полномочий в Windows почитаю. Не понятно кто кому и что должен делегировать?
5 дек 19, 12:23    [22033019]     Ответить | Цитировать Сообщить модератору
 Re: Доступ учетки MSSQL к файлам  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
перечитайте пост 20404211
или еще раньше, по ссылке отсюда 8934752
5 дек 19, 13:01    [22033075]     Ответить | Цитировать Сообщить модератору
 Re: Доступ учетки MSSQL к файлам  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7757
_Gavrysh_
Yasha123,
Про делегирование полномочий в Windows почитаю. Не понятно кто кому и что должен делегировать?


курите протокол Kerberos, чтобы понять.
5 дек 19, 14:46    [22033214]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить