Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Почему SSIS требует разрешение на SELECT для Destination? / 5 сообщений из 5, страница 1 из 1
21.08.2018, 04:16
    #39690752
Диклевич Александр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему SSIS требует разрешение на SELECT для Destination?
доброе утро!

есть такая "проблема".
имеется SQL Server 2016 SP2, Development Edition для разработки хранилища.
по требованиям безопасности, на некоторых таблицах стоит запрет на выборку из некоторых столбцов некоторых таблиц для всех пользователей, включая разработчиков (DENY SELECT). но у них есть права на INSERT и UPDATE.
Так вот, проблема в том, что при работе с такими таблицами в качестве Destination (OLEDB, ADO.NET), SSIS жалуется на отсутсвие прав на SELECT. но зачем тут права на SELECT, если данные просто вставляются? Можно ли как нибудь обойти это "ограничение" SSIS?
...
Рейтинг: 0 / 0
21.08.2018, 04:26
    #39690753
Диклевич Александр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему SSIS требует разрешение на SELECT для Destination?
при этом, как разработчик, я могу видеть DDL таблицы в SSMS без проблем.
...
Рейтинг: 0 / 0
21.08.2018, 09:43
    #39690813
Диклевич Александр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему SSIS требует разрешение на SELECT для Destination?
кому интересно - есть такой компонент в SSIS, называется SQL Server Destination.
он использует OLE DB тип подключения, делает BULK INSERT, при этом может считывать DDL таблицы с ограничением доступа по столбцам и позволяет настроить mapping. я не работал с ним прежде, так что поэкспериментирую, есть ли какие подводные камни.
...
Рейтинг: 0 / 0
21.08.2018, 10:34
    #39690846
Ferdipux
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему SSIS требует разрешение на SELECT для Destination?
Диклевич Александр...
Так вот, проблема в том, что при работе с такими таблицами в качестве Destination (OLEDB, ADO.NET), SSIS жалуется на отсутсвие прав на SELECT. но зачем тут права на SELECT, если данные просто вставляются? Можно ли как нибудь обойти это "ограничение" SSIS?
Подозреваю, что SELECT используется для чтения метаданных таблицы назначения. То есть делается примерно так:
Код: sql
1.
2.
3.
SET FMTONLY ON
SELECT * FROM ...
SET FMTONLY OFF


И дальше - BULK INSERT
...
Рейтинг: 0 / 0
21.08.2018, 13:34
    #39691025
Диклевич Александр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему SSIS требует разрешение на SELECT для Destination?
Ferdipux,

Да, скорее так и есть.
В любом случае, SQL Server Destination позволяет это обойти, хоть там и имеются свои особенности, а именно:
1. можно BULK INSERT только в локальный инстанс, но у нас и так все Destination в пакетах указывают на localhost.
2. работает только с Windows Authentication.
3. требует разрешения Create global objects для пользователя (настраивается в свойствах локальной политики безопасности).
...
Рейтинг: 0 / 0
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Почему SSIS требует разрешение на SELECT для Destination? / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]