我在 Snowflake 中有一些 Streamlit 应用程序。
我希望将 Streamlit 应用程序
my_streamlit_app
从角色 OLD_ROLE
转移到 NEW_ROLE
。
我找到了这个讨论。但是,我的用户界面中没有“点菜单”选项。
什么是 SQL 或通过 UI 的任何方式将所有权转移给另一个新角色?
谢谢!
根据雪花文档
创建 Streamlit 应用程序的权限是在架构级别授予的。
要使用 Snowflake 中的 Streamlit 创建和编辑 Streamlit 应用程序,您必须使用对架构具有 OWNERSHIP 权限或同时具有以下权限的角色:
在包含 Streamlit 应用程序的数据库上授予:
使用
在包含 Streamlit 应用程序的架构上授予:
使用
创建流媒体
创建舞台
创建 Streamlit 应用程序后,它将以最初创建该应用程序的用户的角色运行。
因此,如果您想转让所有权,则应该转让创建 Streamlit 应用程序的架构的所有权。
REVOKE ALL PRIVILEGES ON SCHEMA mySchema FROM ROLE oldOwner;
GRANT OWNERSHIP ON SCHEMA mySchema TO ROLE newOwner;
GRANT ALL PRIVILEGES ON SCHEMA mySchema TO ROLE newOwner;
您还可以撤销架构上的
USAGE
权限,使旧所有者无法使用streamlit应用程序:
REVOKE USAGE, CREATE STREAMLIT, CREATE STAGE ON SCHEMA mySCHEMA FROM ROLE oldOwner;