Можем ли мы предоставить выбор или вставить пользователю в таблице без создания роли в снежинке?
Можем ли мы предоставить прямой доступ к выбору или вставке (без создания роли) пользователю в таблице?
2 ответа
Нет, ты не можешь. Snowflake использует контроль доступа на основе ролей (RBAC):
https://docs.snowflake.com/en/user-guide/security-access-control-overview.html
Следовательно, весь доступ к таблице должен быть предоставлен через роль.
https://docs.snowflake.com/en/sql-reference/ddl-user-security.html
Конечно, вы можете использовать "существующие роли" вместо "создания новой".
Короткий ответ: НЕТ - вы можете предоставить доступ только РОЛИ, а не непосредственно ПОЛЬЗОВАТЕЛЮ.
В Snowflake доступ ко всему осуществляется через ROLE. Смотрите эту диаграмму:
RBAC: ПОЛЬЗОВАТЕЛИ, РОЛИ и ЗАЩИЩАЕМЫЕ ОБЪЕКТЫ
Из этой статьи:
В итоге:
- ПОЛЬЗОВАТЕЛЯМ предоставляется одна или несколько РОЛЕЙ
- РОЛЬ предоставляет ПРИВИЛЕГИИ (например, вставка, обновление, удаление) на ЗАЩИЩАЕМЫЕ ОБЪЕКТЫ (например, ТАБЛИЦА или ПРЕДСТАВЛЕНИЕ)
Даже концепция СОБСТВЕННОСТИ в Snowflake отличается. Каждый ПОЛЬЗОВАТЕЛЬ с одной и той же РОЛИ разделяет доступ к ОБЪЕКТАМ. Это имеет некоторые необычные результаты.
Например:
Если ПОЛЬЗОВАТЕЛЬ создает ТАБЛИЦУ - все с одинаковой РОЛИ имеют ВЛАДЕНИЕ над таблицей.
Вы можете прочитать больше о Snowflake RBAC в этой статье, которая также содержит ссылки на две другие, в которых объясняются передовые методы развертывания. https://www.analytics.today/blog/introduction-snowflake-rbachttps://www.analytics.today/blog/introduction-snowflake-rbac