Как разрешить пользователям без прав администратора видеть полную историю входа в Snowflake
Я новичок в Snowflake. Как администратор баз данных я получил доступ к ACCOUNTADMIN для начала. Я предоставил доступ для чтения к information_schema.login_history и information_schema.query_history нашему пользователю приложения безопасности через роль.
Пользователь может войти в систему и запросить указанные выше представления. Однако учетная запись не может видеть все строки при запросе над представлениями. Возвращает только историю входа в систему этого пользователя, историю запросов этого пользователя. Я тестировал его со своей стороны, переключая роль с ACCOUNTADMIN на роль чтения, которую я создал, и вижу то же самое.
Может ли кто-нибудь сказать мне, какие привилегии мне нужны для предоставления роли, чтобы любой, кто использует эту роль, мог видеть всю историю входа?
2 ответа
Есть два места, где вы можете увидеть историю входов в систему - в представлении Использование учетной записи или с помощью табличных функций информационной схемы. В документации здесь объясняются различия.
Изучив различия, многие клиенты предпочтут предоставить неадминистраторам доступ к представлениям Account_Usage для целей аудита. Необходимые для этого гранты упоминаются в документации здесь.
Однако, если вы предпочитаете предоставить неадминистративным ролям доступ к табличной функции Information_Schema login_history, вам может потребоваться предоставить разрешение MONITOR каждому желаемому пользователю для этой роли в соответствии со статьей здесь.
Вам необходимо предоставить привилегии монитора указанной роли:
grant monitor usage on account to role custom;
Эта информация доступна / просматривается только администраторами учетной записи. Чтобы пользователи, не являющиеся администраторами учетных записей, могли получать доступ к этой информации или просматривать ее, Snowflake предоставляет глобальную привилегию MONITOR USAGE. Предоставление привилегии MONITOR USAGE для роли позволяет всем пользователям, которым назначена роль, получать доступ к этой исторической информации / информации об использовании.
Кроме того, с этой привилегией команды SHOW DATABASES и SHOW WAREHOUSES возвращают списки всех баз данных и хранилищ в учетной записи, соответственно, независимо от других предоставленных привилегий.