Unity Catalog中的特權和安全對象
適用於:磚的SQL磚運行時僅限Unity目錄
特權是授予某人的權利主要給…動手術可獲得的對象在亞轉移中。特權模型和安全對象的不同取決於您使用的是Unity Catalog metastore還是遺留的Hive metastore。本文描述了Unity Catalog的特權模型。如果您正在使用Hive metastore,請參見Hive metastore中的特權和安全對象
請注意
本文引用了特權模型1.0版中的Unity Catalog特權和繼承模型。如果您在公開預覽期間(2022年8月25日之前)創建了Unity Catalog metastore,您可以通過以下操作升級到特權模型1.0版本升級到特權繼承.
可獲得的對象
安全對象是定義在Unity Catalog metastore中的對象,在該對象上可以將權限授予主要.要管理任何對象的權限,您必須是該對象的所有者。
語法
securable_object{目錄[catalog_name]|模式|數據庫}schema_name|外部位置location_name|函數function_name|METASTORE|分享share_name|存儲憑證credential_name|[表格]table_name|視圖view_name}
參數
控製對整個數據目錄的訪問。
{模式|數據庫}
schema_name控製對模式的訪問。
外部位置
location_name控件的訪問外部位置.
控製對用戶定義函數的訪問。
METASTORE
控製對附加到工作區的Unity Catalog metastore的訪問。在管理metastore上的特權時,不需要在SQL命令中包含metastore名稱。Unity Catalog將授予或撤銷附加到您的工作區的metastore上的特權。
存儲憑證
credential_name控件的訪問存儲憑證.
[表格]
table_name控製對托管表或外部表的訪問。如果找不到表,數據庫會拋出一個TABLE_OR_VIEW_NOT_FOUND錯誤。
控製對視圖的訪問。如果無法找到視圖,則Databricks將引發一個TABLE_OR_VIEW_NOT_FOUND錯誤。
繼承模型
Unity Catalog中的安全對象是分層的,權限向下繼承。這意味著在目錄上授予特權會自動將特權授予目錄中當前和未來的所有模式。類似地,在模式上授予的特權將由該模式中的所有當前和未來表和視圖繼承。
例如,如果您授予選擇
模式上的權限授予用戶時,該用戶自動被授予選擇
模式中所有當前和未來的表、視圖和實體化視圖的特權。
權限類型
下表顯示了哪些Unity Catalog特權與哪些Unity Catalog安全對象相關聯。
可獲得的 |
特權 |
---|---|
Metastore |
|
目錄 |
可以在編目級別授予編目內可安全對象的特權。 |
模式 |
模式中可安全對象的特權可以在模式級別授予。 |
表格 |
|
視圖 |
|
外部位置 |
|
存儲憑證 |
|
函數 |
|
分享 |
|
收件人 |
一個也沒有。 |
提供者 |
一個也沒有。 |
所有特權
用於授予或撤銷適用於可安全對象及其子對象的所有特權,而無需顯式指定它們。這將擴展到在進行權限檢查時所有可用的特權。
創建目錄
在Unity Catalog metastore中創建目錄。
創建外部位置
屬性創建外部位置存儲憑證.應用於存儲憑據時,允許用戶使用存儲憑據創建外部位置。還需要將此特權授予metastore上的用戶,以允許他們在該metastore中創建外部位置。
創建外部表格
創建函數
在模式中創建函數。用戶還需要
使用目錄
目錄和使用模式
模式上的特權。創建管理存儲
允許用戶在編目或模式級別指定存儲托管表的位置,覆蓋Unity catalog metastore的默認根存儲。
創建提供者
(對於Delta共享數據接收者)在Unity Catalog metastore中創建一個提供者。
創建收件人
(對於Delta共享數據提供者)在Unity Catalog metastore中創建一個接收者。
創建模式
在目錄中創建模式。用戶還需要
使用目錄
目錄上的特權。創建分享
(對於Delta共享數據提供者)在Unity Catalog metastore中創建一個共享。
創建表格
在模式中創建表或視圖。用戶還需要
使用目錄
目錄和使用模式
模式上的特權。要創建外部表,用戶還需要創建外部表格
外部位置和存儲憑據上的特權。執行
調用用戶定義的函數。用戶還需要
使用目錄
目錄和使用模式
模式上的特權。修改
READ_METADATA
讀文件
選擇
查詢表或視圖、調用用戶定義或匿名函數或選擇
任何文件
.用戶需求選擇
在表、視圖或函數上,以及使用目錄
對象的目錄和使用模式
在對象的模式上。使用目錄
必需的,但不足以引用目錄中的任何對象。主體還需要對各個可安全對象擁有特權。
使用模式
必須的,但不足以引用模式中的任何對象。主體還需要對各個可安全對象擁有特權。
寫文件