工作空間的SCIM API 2.0(用戶)

預覽

此功能已在公共預覽

這是一篇用於用戶的工作空間級SCIM API的參考文章。

您可以使用SCIM (Users) API在Databricks中創建用戶並賦予他們適當的訪問級別,向用戶添加角色並從用戶中刪除角色,臨時鎖定和解鎖用戶帳戶,以及在用戶離開組織或不再需要訪問Databricks工作區時刪除用戶的訪問權限(取消對他們的配置)。

有關使用api直接將用戶提供給您的帳戶的信息,請參見SCIM API 2.0(帳戶).有關何時使用帳戶級或工作區級SCIM配置的信息,請參見帳戶級和工作空間級的SCIM供應

有關錯誤代碼,請參見SCIM API 2.0錯誤代碼

需求

可以調用所有SCIM API端點。非管理員用戶可以調用讓用戶端點讀取用戶顯示的名稱和id。

請注意

每個工作區最多可以有10,000個用戶和5,000個組。服務主體計入用戶最大值。

讓用戶

端點

HTTP方法

2.0 /預覽/ scim / v2 /用戶

得到

管理用戶:在Databricks工作區中檢索所有用戶的列表。

非admin用戶:檢索Databricks工作區中所有用戶的列表,隻返回用戶名、用戶顯示名和對象ID。

例子

這個示例獲取關於所有用戶的信息。

—netrc -X GEThttps:// < databricks-instance > / api / 2.0 /預覽/ scim / v2 /用戶|金橋。

本例使用情商(=)過濾器查詢參數用戶名獲取有關特定用戶的信息。

—netrc -X GET“https:// < databricks-instance > / api / 2.0 /預覽/ scim / v2 /用戶?過濾器=用戶名+ eq + <用戶名>”|金橋。

替換:

  • < databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • <用戶名>例如,使用用戶的Databricks工作空間用戶名someone@example.com

本例使用. netrc文件和金橋

通過ID獲取用戶

端點

HTTP方法

2.0 /預覽/ scim / v2 /用戶/ {id}

得到

管理用戶:根據Databricks ID,從Databricks工作區檢索單個用戶資源。

例子

請求

—netrc -X GEThttps:// < databricks-instance > / api / 2.0 /預覽/ scim / v2 /用戶/ <用戶id >|金橋。

替換:

  • < databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • <用戶id >例如,使用用戶的Databricks工作區ID2345678901234567.要獲取用戶ID,請調用讓用戶

本例使用. netrc文件和金橋

響應

“權利”:[“價值”“allow-cluster-create”),“模式”:[“urn: ietf:參數:scim:模式:核心:2.0:用戶”),“角色”“價值”“攻擊:aws:我::123456789012:角色/ <角色名>”),“組織”:[“價值”“123456”),“用戶名”“example@m.eheci.com”

有關Databricks身份類型的可用授權列表,請參閱:

創建用戶

端點

HTTP方法

2.0 /預覽/ scim / v2 /用戶

帖子

管理用戶:在Databricks工作區中創建一個用戶。該用戶將自動添加到帳戶中。看到Databricks如何在工作空間和帳戶之間同步身份?

請求參數遵循標準的SCIM 2.0協議。

請求必須包含以下屬性:

  • 模式設置為urn: ietf:參數:scim:模式:核心:2.0:用戶

  • 用戶名

例子

—netrc -X POSThttps:// < databricks-instance > / api / 2.0 /預覽/ scim / v2 /用戶——頭內容類型:應用程序/ scim + json的——數據@create-user.json|金橋。

create-user.json

“模式”“urn: ietf:參數:scim:模式:核心:2.0:用戶”),“用戶名”“<用戶名>”“組織”“價值”“123456”),“權利”:[“價值”“allow-cluster-create”

替換:

  • < databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • <用戶名>例如,使用用戶的Databricks工作空間用戶名someone@example.com

本例使用. netrc文件和金橋

有關Databricks身份類型的可用授權列表,請參閱:

根據ID更新用戶(補丁

端點

HTTP方法

2.0 /預覽/ scim / v2 /用戶/ {id}

補丁

管理用戶:使用對特定屬性的操作更新用戶資源,除了那些不可變的屬性(用戶名而且用戶標識).的補丁方法,建議在設置或更新用戶權限的方法。

請求參數遵循標準的SCIM 2.0協議,並依賴於模式屬性。

例子

此示例添加allow-cluster-create指定用戶的授權。

curl—netrc -X PATCHhttps:// < databricks-instance > / api / 2.0 /預覽/ scim / v2 /用戶/ <用戶id >——頭內容類型:應用程序/ scim + json的——數據@update-user.json|金橋。

update-user.json

“模式”“urn: ietf:參數:scim: api:消息:2.0:PatchOp”),“操作”“人事處”“添加”“路徑”“權利”“價值”“價值”“allow-cluster-create”

替換:

  • < databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • <用戶id >例如,使用用戶的Databricks工作區ID2345678901234567.要獲取用戶ID,請調用讓用戶

本例使用. netrc文件和金橋

有關Databricks身份類型的可用授權列表,請參閱:

根據ID更新用戶(

端點

HTTP方法

2.0 /預覽/ scim / v2 /用戶/ {id}

管理用戶:跨多個屬性覆蓋用戶資源,除了那些不可變的屬性(用戶名而且用戶標識).

請求必須包括模式屬性,設置為urn: ietf:參數:scim:模式:核心:2.0:用戶

請注意

補丁方法,建議在設置或更新用戶權限的方法。

例子

此示例將指定用戶以前的權限更改為現在僅具有allow-cluster-create權利。

—netrc -X PUThttps:// < databricks-instance > / api / 2.0 /預覽/ scim / v2 /用戶/ <用戶id >——頭內容類型:應用程序/ scim + json的——數據@overwrite-user.json|金橋。

overwrite-user.json

“模式”“urn: ietf:參數:scim:模式:核心:2.0:用戶”),“用戶名”“<用戶名>”“權利”“價值”“allow-cluster-create”

替換:

  • < databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • <用戶id >例如,使用用戶的Databricks工作區ID2345678901234567.要獲取用戶ID,請調用讓用戶

  • <用戶名>例如,使用用戶的Databricks工作空間用戶名someone@example.com.要獲取用戶名,請調用讓用戶

本例使用. netrc文件和金橋

有關Databricks身份類型的可用授權列表,請參閱:

通過ID為用戶添加角色

端點

HTTP方法

2.0 /預覽/ scim / v2 /用戶/ {id}

補丁

例子

curl—netrc -X PATCHhttps:// < databricks-instance > / api / 2.0 /預覽/ scim / v2 /用戶/ <用戶id >——頭內容類型:應用程序/ scim + json的——數據@add-role-to-user.json|金橋。

add-role-to-user.json

“模式”“urn: ietf:參數:scim: api:消息:2.0:PatchOp”),“操作”“人事處”“添加”“路徑”“角色”“價值”“價值”""

替換:

  • < databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • <用戶id >例如,使用用戶的Databricks工作區ID2345678901234567.要獲取用戶ID,請調用讓用戶

  • < role-arn >例如,使用角色的Amazon資源名(ARN)攻擊:aws:我::123456789012:/我的角色作用

  • < instance-profile-role-arn >例如,使用實例概要文件角色的Amazon Resource Name (ARN)攻擊:aws:我::123456789012:instance-profile /我的角色

本例使用. netrc文件和金橋

根據ID從用戶中刪除角色

端點

HTTP方法

2.0 /預覽/ scim / v2 /用戶/ {id}

補丁

例子

curl—netrc -X PATCHhttps:// < databricks-instance > / api / 2.0 /預覽/ scim / v2 /用戶/ <用戶id >——頭內容類型:應用程序/ scim + json的——數據@remove-role-from-user.json|金橋。

remove-role-from-user.json

“模式”“urn: ietf:參數:scim: api:消息:2.0:PatchOp”),“操作”“人事處”“刪除”“路徑”"roles[value eq \"\"]"

替換:

  • < databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • <用戶id >例如,使用用戶的Databricks工作區ID2345678901234567.要獲取用戶ID,請調用讓用戶

  • < role-arn >例如,使用角色的Amazon資源名(ARN)攻擊:aws:我::123456789012:/我的角色作用

  • < instance-profile-role-arn >例如,使用實例概要文件角色的Amazon Resource Name (ARN)攻擊:aws:我::123456789012:instance-profile /我的角色

本例使用. netrc文件和金橋

按ID刪除用戶

端點

HTTP方法

2.0 /預覽/ scim / v2 /用戶/ {id}

刪除

Admin users:刪除用戶資源。在Databricks中不擁有或不屬於工作空間的用戶將在30天後自動清除。

從工作空間刪除用戶也會刪除與用戶關聯的對象。例如,筆記本被歸檔,集群被終止,作業變得無主。

不會自動刪除用戶的主目錄。隻有管理員才能訪問或刪除已刪除用戶的主目錄。

用戶的訪問控製列表(ACL)配置即使在該用戶從工作空間中刪除之後也會保留。

示例請求

—netrc -X DELETEhttps:// < databricks-instance > / api / 2.0 /預覽/ scim / v2 /用戶/ <用戶id >

替換:

  • < databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • <用戶id >例如,使用用戶的Databricks工作區ID2345678901234567.要獲取用戶ID,請調用讓用戶

本例使用. netrc文件。

通過ID激活和去激活用戶

預覽

此功能已在公共預覽

端點

HTTP方法

2.0 /預覽/ scim / v2 /用戶/ {id}

補丁

管理員用戶:激活或去激活用戶。取消激活用戶將刪除該用戶對工作空間的所有訪問,但保留與用戶關聯的權限和對象不變。與用戶關聯的集群將繼續運行,而筆記本將保持在其原始位置。用戶的令牌將被保留,但在用戶被停用時不能用於身份驗證。但是,計劃作業除非分配給新的所有者,否則將失敗。

您可以使用讓用戶而且通過ID獲取用戶請求查看用戶是否處於活動狀態。

請注意

為使去激活生效,至少需要5分鍾的時間來清除緩存。

設置active值為禁用用戶和真正的激活用戶。

例子

請求

curl—netrc -X PATCHhttps:// < databricks-instance > / api / 2.0 /預覽/ scim / v2 /用戶/ <用戶id >——頭內容類型:應用程序/ scim + json的——數據@toggle-user-activation.json|金橋。

toggle-user-activation.json

“模式”“urn: ietf:參數:scim: api:消息:2.0:PatchOp”),“操作”“人事處”“替換”“路徑”“活躍”“價值”“價值”“假”

替換:

  • < databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • <用戶id >例如,使用用戶的Databricks工作區ID2345678901234567

本例使用. netrc文件和金橋

響應

“電子郵件”“類型”“工作”“價值”“someone@example.com”“主”真正的),“displayName”“有人用戶”“模式”“urn: ietf:參數:scim:模式:核心:2.0:用戶”“urn: ietf:參數:scim:模式:擴展:工作區:2.0:用戶”),“名稱”“familyName”“用戶”“givenName”“一個人”},“活躍”“組織”[],“id”“123456”“用戶名”“someone@example.com”

過濾活躍和不活躍的用戶

預覽

此功能已在公共預覽

端點

HTTP方法

2.0 /預覽/ scim / v2 /用戶

得到

管理用戶:檢索活動或非活動用戶的列表。

例子

—netrc -X GET“https:// < databricks-instance > / api / 2.0 /預覽/ scim / v2 /用戶?過濾器=活躍+ eq +假”|金橋。

取代< databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.m.eheci.com

本例使用. netrc文件和金橋

自動停用用戶

預覽

此功能已在公共預覽

管理員用戶:禁用長時間未登錄的用戶。用戶擁有的預定作業也被認為是活動。

端點

HTTP方法

2.0 /預覽/ workspace-conf

補丁

請求體是一個鍵值對,其中值是用戶在自動去激活之前可以處於非活動狀態的時間限製。

例子

curl—netrc -X PATCHhttps:// < databricks-instance > / api / 2.0 /預覽/ workspace-conf——數據@deactivate-users.json|金橋。

deactivate-users.json

“maxUserInactiveDays”“90”

取代< databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.m.eheci.com

本例使用. netrc文件和金橋

獲取工作區的最大用戶不活動時間

預覽

此功能已在公共預覽

管理用戶:檢索為工作空間定義的用戶不活動限製。

端點

HTTP方法

2.0 /預覽/ workspace-conf

得到

示例請求

—netrc -X GET“https:// < databricks-instance > / api / 2.0 /預覽/ workspace-conf嗎?鍵= maxUserInactiveDays”|金橋。

取代< databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.m.eheci.com

本例使用. netrc文件和金橋

示例響應

“maxUserInactiveDays”“90”