管理用戶、服務主體和組

本文介紹Databricks身份管理模型,並概述如何在Databricks中管理用戶、組和服務主體。

有關如何在Databricks中最好地配置身份的觀點,請參見身份最佳實踐

數據庫身份和角色

有三種類型的Databricks身份:

  • 用戶:由Databricks識別並以電子郵件地址表示的用戶身份。

  • 服務主體:用於作業、自動化工具和係統(如腳本、應用程序和CI/CD平台)的身份。Beplay体育安卓版本

  • :管理員用來管理組對工作空間、數據和其他安全對象的訪問的身份集合。所有Databricks身份都可以分配為組的成員。

在Databricks中定義了五個角色:

  • 賬戶管理員可以管理您的Databricks帳戶級別的配置,包括創建工作區,Unity Catalog亞存儲,計費和雲資源。帳戶管理員可以將用戶添加到帳戶,並為其分配管理角色。它們還可以讓用戶訪問工作空間,隻要這些工作空間在使用聯合身份驗證

  • 工作空間管理員可以將用戶添加到Databricks工作空間,為他們分配工作空間管理員角色,並管理對工作空間中對象和功能的訪問,例如創建集群或訪問指定的基於角色的環境的能力。

  • Metastore管理員可以管理Unity Catalog metastore中所有安全對象的權限,例如誰可以創建目錄或查詢表。

  • 用戶帳戶可以使用帳戶控製台查看並連接到他們的工作空間。帳戶和工作空間管理員可以向帳戶添加用戶。

  • 工作空間的用戶在工作區中執行數據科學、數據工程和數據分析任務。帳戶和工作空間管理員可以讓帳戶用戶訪問工作空間,隻要這些工作空間使用聯合身份驗證

誰可以管理Databricks中的身份?

要在Databricks中管理身份,您必須是帳戶管理員或工作空間管理員。用戶管理操作所需的具體權限如下表所示:

行動

誰能執行這個動作?

添加用戶和服務主體

帳戶管理員可以向帳戶中添加用戶和服務主體。

工作空間管理員可以從他們的工作空間向帳戶添加用戶和服務主體。

更新用戶和服務主體

帳戶管理員可以更新帳戶中的用戶和服務主體。

刪除用戶和業務主體

帳戶管理員可以從帳戶中刪除用戶和服務主體。

添加組

帳戶管理員可以向帳戶添加組。

工作空間管理員可以添加workspace-local組到工作空間管理員的工作空間。

更新組

帳戶管理員可以更新帳戶中的組。

工作區管理員可以更新workspace-local組在工作空間管理員的工作空間中。

刪除組

帳戶管理員可以從帳戶中刪除組。

工作區管理員可以刪除workspace-local組從工作空間管理員的工作空間。

一個帳戶最多可包含10,000個用戶和服務主體,以及5,000個組。每個工作區最多可以有10,000個用戶和服務主體以及5000個組。

詳細說明請參見:

管理員如何將用戶分配到工作區?

要使用戶、服務主體或組能夠在Databricks工作空間中工作,帳戶管理員或工作空間管理員需要將其分配到工作空間。

隻要啟用了工作空間,帳戶管理員就可以向帳戶中存在的用戶、服務主體和組分配工作空間訪問權聯合身份驗證.工作空間管理員還可以將用戶、服務主體和組分配到其身份聯邦工作空間。

相反,如果直接將新用戶或服務主體添加到工作空間,則該用戶或服務主體將自動添加到帳戶並分配給該工作空間。Databricks不推薦這種上遊流程。將您的用戶添加到帳戶,然後將他們分配到工作空間更為直接。看到Databricks如何在工作空間和帳戶之間同步身份?

直接在工作空間中創建的組(稱為工作空間-本地組)不會自動添加到帳戶。您可以手動將工作空間-本地組重新創建為帳戶中的組。看到團體特別注意事項

帳戶級別的標識圖

對於那些沒有啟用身份聯合的工作空間,工作空間管理員完全在工作空間(遺留模型)的範圍內管理他們的工作空間用戶、服務主體和組。他們不能使用帳戶控製台或帳戶級api將帳戶中的用戶分配到這些工作空間,但是他們可以使用任何工作空間級接口。

每當用戶或服務主體被添加到工作區時,該用戶或服務主體將被同步到帳戶級別。無論是否啟用了身份聯合,隻要從帳戶級別刪除用戶或服務主體,該用戶將失去對帳戶中所有工作區的訪問權。無論何時將組添加到工作空間,該組都將是工作空間-本地組,並且不會添加到帳戶。看到團體特別注意事項

詳細說明請參見:

管理員如何在工作空間上啟用身份聯合?

為了在工作空間中啟用身份聯合,管理員需要通過分配一個Unity Catalog亞礦來啟用Unity Catalog的工作空間。看到為Unity Catalog啟用一個工作區

Databricks如何在工作空間和帳戶之間同步身份?

在2022年8月,所有現有的工作區用戶和服務主體將作為帳戶級用戶和服務主體自動同步到您的帳戶。無論何時將用戶或服務主體添加到工作區,Databricks都將繼續將用戶或服務主體同步到帳戶。如果工作區用戶與已經存在的帳戶級用戶或管理員共享用戶名(電子郵件地址),則合並這些用戶。

重要的

如果帳戶管理員在帳戶級別刪除用戶或服務主體,則該用戶也將從其工作區中刪除,而不管是否啟用了身份聯合。您應該避免刪除帳戶級別的用戶或服務主體,除非您希望他們失去對帳戶中所有工作區的訪問權。刪除用戶的後果如下:

  • 使用用戶生成的令牌的應用程序或腳本將不再能夠訪問Databricks API

  • 用戶擁有的作業將失敗

  • 用戶所屬的集群將停止運行

  • 由用戶創建並使用Run as Owner憑據共享的查詢或儀表板必須分配給新的所有者,以防止共享失敗

工作區-本地組未同步到帳戶級別。工作區-本地組被標識為workspace-local在工作空間管理控製台中,以及在帳戶控製台中工作空間Permissions選項卡上(如果為工作空間啟用了身份聯合)。有關更多信息,請參見團體特別注意事項

團體特別注意事項

而在工作空間級別創建的用戶和服務主體則是自動同步到帳戶,在工作空間級別創建的組則不是。相反,Databricks的概念是賬戶組而且workspace-local組,具有特殊的行為:

  • 賬戶組隻能由管理員帳戶創建。帳戶組可用於分配給身份聯邦工作區,並且可以由帳戶管理員和工作空間管理員分配給此類工作區

  • Workspace-local組隻能由工作空間管理員創建。這些群體被認定為workspace-local在工作空間管理控製台和帳戶控製台中工作空間權限選項卡上。

Databricks建議不要使用工作區-本地組而不是帳戶組。為了使用帳戶組,必須為身份聯合啟用工作空間。如果您正在啟用現有的工作空間進行身份聯合,您可以同時使用帳戶組和工作空間-本地組,但Databricks建議將工作空間-本地組轉換為帳戶組,以利用使用Unity Catalog的集中式工作空間分配和數據訪問管理。

分配管理角色

帳戶管理員可以將其他用戶分配為帳戶管理員。通過創建一個metastore,他們也可以成為Unity Catalog的metastore管理員,並且他們可以將metastore管理角色轉移給另一個用戶或組。

帳戶管理員和工作空間管理員都可以將其他用戶分配為工作空間管理員。工作空間管理角色由工作空間中的成員資格決定管理員“數據庫”中的默認組,不能刪除。

看到的:

分配權利

授權是允許用戶、服務主體或組以指定的方式與Databricks交互的屬性。授權被分配給工作空間級別的用戶。下表列出了用於管理每個授權的工作區UI和API屬性名。您可以使用工作區管理控製台和工作區級別SCIM REST接口權限管理。

授權名稱(UI)

授權名稱(API)

默認的

描述

工作空間的訪問

workspace-access

默認允許。

當授予用戶或服務主體時,他們可以訪問數據科學與工程和Databricks機器學習基於人物的環境。

不能從工作空間管理員中刪除。

Databricks SQL訪問

databricks-sql-access

默認允許。

當授予用戶或服務主體時,它們可以訪問Databricks SQL。

允許無限製地創建集群

allow-cluster-create

默認情況下不授予用戶或服務主體。

當授予用戶或服務主體時,它們可以創建集群。可以使用。限製對現有集群的訪問集群級別的權限

不能從工作空間管理員中刪除。

允許創建池(不能通過UI)

allow-instance-pool-create

不能授予單個用戶或服務主體。

當授予一個組時,其成員可以創建實例池。

不能從工作空間管理員中刪除。

設置單點登錄(SSO)

單點登錄(SSO)使您能夠使用Okta等第三方身份提供者對用戶進行身份驗證。如果您的標識提供程序支持SAML 2.0協議(或者,對於帳戶級SSO,支持OIDC協議),您可以使用Databricks SSO與您的標識提供程序集成。

帳戶級和工作空間級標識的SSO必須分開管理。

看到設置單點登錄