Important
這項功能位於 測試版 (Beta) 中。 要使用此功能,工作區管理員必須從預覽頁面開啟受控代理式應用程式建置。 請參閱 管理 Azure Databricks 預覽。
應用程式空間是一個治理邊界,管理員在此定義誰可以創建和使用應用程式、這些應用程式擁有哪些權限,以及適用哪些支出政策。
App Space 讓管理員可以為多個應用程式設定權限,而不是讓開發者定義資源或權限。
應用程式開發者使用 Genie App Builder 在 App Space 中建立應用程式。
為什麼要使用 App Spaces
隨著程式代理讓應用程式建置變得更容易,組織內越來越多人開始開發這些應用程式。 App Spaces 讓企業及其他非技術用戶能創建能存取資料且不破壞組織治理模式的應用程式。 管理員會為一群建置者一次性定義護欄(身分、權限範圍和資源),而在該空間中建置的每個應用程式都會繼承這些規範。
建立應用程式空間
你必須是工作區管理員才能建立應用程式空間。 你可以用以下兩種方式創建:
- 在 Databricks Apps 介面中,點選 App Spaces,然後 + New Space。
- 使用 Azure Databricks REST API 或 Terraform 提供者。
Note
你在建立 App Space 後不能更改它的名字。
設定應用程式空間
作為工作區管理員,你可以設定:
- 使用者授權:應用程式能代表使用者做什麼。
- 無伺服器使用政策:此空間中應用程式的無伺服器使用政策。
- 權限:誰可以在該空間內建立應用程式。
使用者授權
使用者授權,有時稱為代表使用者授權(OBO)授權,允許 Databricks 應用程式以登入使用者的身份來行動。 應用程式只能存取使用者已被允許存取的資料和資源,且在你允許的範圍內。 請參閱 在 Databricks 應用程式中設定授權。
App Space 讓管理員可以限制在使用者授權下可使用的角色和範圍。 當存取應遵循各使用者在 Azure Databricks 中既有的權限時,請使用使用者授權,例如存取 Unity Catalog 資料表、Genie 空間和代理程式或儀表板時。
基於角色的存取控制
使用基於角色的存取控制(RBAC)來限制應用程式權限與分享。 你可以允許使用者在登入應用程式時選擇角色,或要求使用者扮演特定角色才能在該空間使用應用程式。
在 Azure Databricks 中,角色是以群組形式實作。 群組成員可以自動擔任此角色。 其他使用者需要 Assume 權限。 參見角色型存取控制 (RBAC)。
| 設定 | 誰可以使用應用程式 | 使用者授權權限 |
|---|---|---|
| 任何角色 | 開發者與其分享應用程式的任何人 | 使用者登入應用程式時所選擇的角色 |
| 僅限所選角色 | 若應用程式已與他們共享,這些使用者可以擔任所選角色。 | 僅限所選角色 |
例如:
- App Space 只會在群組
emea-sales中使用所選角色。 - Jane Doe 是
emea-sales的成員。 - 應用程式開發者將他們的應用程式分享給 Jane Doe。
- Jane 必須扮演
emea-sales登入應用程式的角色。 - 經使用者授權後,應用程式只能存取
emea-sales可存取的內容(在允許的範圍內),即使 Jane Doe 具有額外的授與和權限。
Note
- 若要只使用 所選角色,請在帳號層級和工作區層級啟用 RBAC。
- 只有帳號群組可以使用,且有角色限制。
- 即使已選擇角色,開發者仍可控制其 App 的分享方式。
- 為應用程式空間指派角色 並不會 賦予使用者任何新權限。 使用者必須擁有該角色的存取權才能使用該應用程式,即使開發者已與使用者分享該應用程式。
Scopes
使用使用者授權的應用程式必須宣告特定的授權範圍,以限制應用程式代表使用者的行為。 請參閱 在 Databricks 應用程式中設定授權。
在 App Space 中,你可以控制每個應用程式所請求的範圍。
預設情況下,新的應用程式空間會使用 Data + AI 預設,允許以下 11 個範圍:
sql:restricted-querygeniecatalog.catalogs:readcatalog.schemas:readcatalog.tables:readfilesmodel-servingai-functionsai-gatewaymcp.externalmcp.functions
你可以在建立或設定應用程式空間時查看或編輯所選範圍。
無伺服器使用政策
空間中的應用程式是根據無伺服器使用政策執行的。 請參閱 Azure Databricks 上的成本管理工具。
許可
以下權限控制誰能在應用程式空間中工作:
| 許可 | 授予…的能力 |
|---|---|
CAN CREATE APP |
在此領域開發應用程式 |
CAN MANAGE |
調整空間設定 |
CAN READ |
查看空間,但不要在裡面建立應用程式(或不一定使用裡面的應用程式) |
範例使用案例
你可以根據群組的運作方式來塑造應用程式空間:
| Type | Description |
|---|---|
| 公共應用程式 | 應用程式可以與工作空間內的任何人分享。 只能存取所有工作區使用者可用的資料和資源。 |
| 團隊應用程式 | 由特定團隊開發的應用程式,與其現有角色、基礎設施、資料及權限相符。 |
| 專案應用程式 | 與特定專案或參與相關的應用程式,分享其已配置的資料表、倉庫、管線及存取邊界。 |