Доступ к внутреннему этапу Snowflake для роли, не являющейся владельцем

#snowflake-cloud-data-platform #put #file-transfer #snowflake-pipe #movefile

#snowflake-cloud-data-platform #put #передача файлов #snowflake-труба #movefile

Вопрос:

Я помещаю данные во внутренний этап таблицы, а затем использую команду копирования для загрузки в фактическую таблицу. Он отлично работает с моим идентификатором, поскольку я являюсь владельцем таблицы (моя роль).

Теперь я пытаюсь запустить этот процесс с другим пользователем, у которого есть доступ для чтения и записи в таблице. Я получаю сообщение об ошибке ниже: недостаточно привилегий для работы с таблицей «stagename».

есть ли способ предоставить PUT доступ к другим ролям для внутреннего этапа таблицы?Я вижу, что это возможно для этапа имен, но я не вижу никакой документации для этапа внутренней таблицы.

Ответ №1:

Вам придется использовать именованный этап, если вы хотите предоставить привилегии:

Обратите внимание, что этап таблицы не является отдельным объектом базы данных; скорее, это неявный этап, привязанный к самой таблице. Этап таблицы не имеет собственных привилегий. Чтобы поместить файлы в этап таблицы, перечислить файлы, запросить их на этапе или удалить их, вы должны быть владельцем таблицы (иметь роль с правами СОБСТВЕННОСТИ на таблицу).

https://docs.snowflake.com/en/user-guide/data-load-local-file-system-create-stage.html#table-stages