共用方式為


什麼是 ANY FILE 安全性實體?

ANY FILE 安全性實體上的許可權會授與授權主體直接存取雲端物件記憶體中的檔系統和數據,不論在架構或數據表等資料庫對象上設定的任何 Hive 數據表 ACL。

的許可權 ANY FILE

您可以使用舊版 Hive 數據表存取控制清單(ACL),將 ANY FILE 安全性實體上 MODIFYSELECT 許可權授與任何服務主體、使用者或群組。 根據預設,所有工作區管理員都有 MODIFY 許可權 ANY FILE 。 任何具有 MODIFY 許可權的使用者都可以在 ANY FILE上授與或撤銷許可權。

使用未包含在 Lakehouse 同盟中的自訂數據源或 JDBC 驅動程式時,您必須擁有 ANY FILE 安全性實體的許可權。 請參閱 什麼是 Lakehouse 同盟?

ANY FILE 安全性實體的許可權無法覆寫 Unity 目錄許可權,也不會授與或擴充 Unity 目錄所控管之數據物件的許可權。 某些驅動程式和自定義安裝的連結庫可能會藉由將所有用戶的數據儲存在一個通用暫存目錄中,來危害用戶隔離。

只有在您使用具有共用存取模式的 ANY FILE SQL 倉儲或叢集時,才會套用安全性實體的許可權。

ANY FILE 尊重雲端物件記憶體中數據的舊版存取模式,包括計算層級定義的掛接和記憶體認證。 請參閱 設定 Azure Databricks 雲端物件記憶體的存取。

ANY FILE 如何與 Unity 目錄互動?

使用已啟用 Unity 目錄的共用叢集或 SQL 倉儲時,會評估 ANY FILE 安全性實體的許可權,以存取 Unity 目錄 不受 控管的記憶體路徑或數據源。 所有與 Unity Catalog 相關的許可權之後,會評估 ANY FILE 可保護對象的許可權,並作為非 Unity Catalog 管理的儲存路徑和連接器函式庫的後備。

Databricks 建議使用 Lakehouse 同盟來設定支援外部數據源的只讀存取權。 Lakehouse 同盟永遠不會要求安全性實體的許可權 ANY FILE 。 請參閱 什麼是 Lakehouse 同盟?

Unity Catalog 磁碟區和資料表提供了對表格數據和非表格數據的完整管理,且不需要 ANY FILE 安全實體的權限。

受 Unity Catalog 管理的任何資料,使用 URI 存取時,無法使用 ANY FILE 安全性實體的許可權。 請參閱 連線到雲端物件記憶體和服務,使用 Unity 目錄

您必須擁有 SELECT 許可權在 ANY FILE 安全性實體上,才能在已啟用 Unity Catalog 的共用叢集上使用下列模式進行讀取:

  • 使用 URI 的雲端物件記憶體。
  • 儲存在 DBFS 根目錄中或使用 DBFS 掛接的數據。
  • 使用自訂連結庫或驅動程序的數據源。
  • 未設定 Lakehouse 同盟的 JDBC 驅動程式。
  • 不受 Unity 目錄控管的外部數據源。
  • 串流數據源,但 Unity 目錄所控管的數據表和磁碟區,以及使用登錄至 Hive 中繼存放區之數據表名稱的數據流除外。

安全性實體許可權的 ANY FILE 顧慮

ANY FILE 可安全化的物件的許可權基本上會繞過資料庫中的對象上設定的舊版 Hive 資料表 ACL。 如果您尚未將所有數據表完全移轉至 Unity 目錄,而且仍然依賴舊版 Hive 數據表 ACL 管理資料存取權,則在授與 ANY FILE 安全性實體的許可權時請謹慎行事。

ANY FILE 安全性實體上授與的許可權絕不會略過 Unity 目錄數據控管。 不過,對 ANY FILE 安全物件具有許可權的使用者可以更靈活地設定和存取不受 Unity Catalog 控管的數據來源。

的限制 ANY FILE

ANY FILE 是在信息架構中未回報的遺留可保護對象。