管理服务主体
预览
此功能已在公共预览.
本文解释如何为Databricks帐户和工作区创建和管理服务主体。
有关Databricks标识模型的概述,请参见数据库身份和角色.
什么是服务主体?
服务主体是在Databricks中创建的标识,用于自动化工具、作业和应用程序。服务主体为自动化工具和脚本提供了对Databricks资源的仅api访问,这比使用用户或组提供了更高的安全性。它还可以防止在用户离开组织或修改组时作业和自动化失败。
可以像Databricks用户那样授予和限制服务主体对资源的访问。例如:
给一个服务主体帐户admin和工作空间admin角色。
给一个服务主体访问数据的权限,可以在帐户级别使用Unity Catalog,也可以在工作空间级别。
与Databricks用户不同,服务主体是一个仅限api的标识;无法访问Databricks界面。
Databricks建议您为标识联合启用工作区这样您就可以在帐户中管理服务主体。如果您的工作空间没有启用身份联合,您可以使用工作空间级别的SCIM api创建和管理服务主体。
帐户管理员可以通过以下接口管理服务主体:
帐户控制台
工作空间管理员可以使用以下接口管理工作空间中的服务主体:
有关帐户级身份如何与工作区一起工作的详细信息,请参见管理用户、服务主体和组.
有关服务主体及其使用方法的详细信息,请参见Databricks自动化的服务主体.
向Databricks帐户添加一个服务主体
帐户管理员可以使用帐户控制台或SCIM(帐户)API向Databricks帐户添加服务主体。
使用帐户控制台向帐户添加服务主体
使用帐户控制台向帐户添加服务主体:
以admin帐户登录账户控制台.
点击用户管理.
在服务主体选项卡上,单击添加服务主体.
为服务主体输入一个名称。
点击添加.
要使用服务主体,必须将它们添加到工作空间,并在工作空间中为它们生成访问令牌。看到向工作区添加服务主体.
使用SCIM(帐户)API将服务主体添加到您的帐户
帐户管理员可以使用SCIM帐户API在Databricks帐户中添加和管理服务主体。
工作区管理员也可以使用此API创建和管理服务主体,但他们必须使用不同的端点URL调用API:
帐户管理员使用
accounts.cloud.www.neidfyre.com/api/2.0/accounts/ {account_id} / scim / v2 /
.工作区管理员使用
{workspace-domain} / api / 2.0 /账户/ scim / v2 /
.
使用SCIM API添加一个服务主体:
使用SCIM API 2.0(帐户)确定服务主体是否已经存在。
如果服务主体不存在,则使用相同的API创建主体。
属性将服务主体分配给工作区工作空间分配API.
详细信息请参见SCIM API 2.0(帐户).
将帐户管理权限分配给服务主体
通过帐户控制台为帐户admin分配权限,请执行以下操作:
以admin帐户登录账户控制台.
点击用户管理.
在服务主体选项卡,找到并单击用户名。
在角色Tab,打开账户管理.
从Databricks帐户中删除服务主体
帐户管理员可以从Databricks帐户中删除服务主体。工作空间管理员则不能。当您从帐户中删除服务主体时,该主体也将从其工作空间中删除。
重要的
当您从帐户中删除服务主体时,该服务主体也将从其工作区中删除,而不管是否启用了身份联邦。您应该避免删除帐户级别的服务主体,除非您希望它们失去对帐户中所有工作区的访问权。注意删除服务主体的后果如下:
使用服务主体生成的令牌的应用程序或脚本将不再能够访问Databricks API
服务主体拥有的作业将失败
服务主体所拥有的集群将停止
由服务主体创建并使用Run as Owner凭据共享的查询或仪表板必须分配给新的所有者,以防止共享失败
要使用帐户控制台删除服务主体,请执行以下操作:
以admin帐户登录账户控制台.
点击用户管理.
在服务主体选项卡,找到并单击用户名。
在主要信息选项卡,单击烤肉菜单到右上方并选择删除.
在弹出的确认对话框中,单击确认删除.
向工作区添加服务主体
帐户管理员可以向identity-federated工作区使用以下方法:
帐户控制台
工作空间分配API
工作空间管理员可以使用以下方法管理工作空间中的服务主体:
工作空间管理控制台(如果为标识联合启用了工作空间)
工作空间级别的SCIM (ServicePrincipals) API
工作空间分配API(如果为身份联合启用了工作空间)
使用帐户控制台将服务主体分配到工作区
要使用帐户控制台向工作空间添加服务主体,必须启用工作空间的身份联合功能。
以admin帐户登录账户控制台.
点击工作区.
在权限选项卡上,单击添加权限.
搜索并选择服务主体,分配权限级别(工作区用户或管理),并按保存.
使用管理控制台将服务主体添加到工作区
要使用工作空间管理控制台向工作空间添加服务主体,必须启用工作空间的身份联合功能。
作为一个工作空间管理员,登录到Databricks工作空间。
在Databricks工作区的顶部栏中单击您的用户名并选择管理控制台.
点击设置并选择管理控制台.
在服务主体选项卡上,单击添加服务主体.
选择一个现有的服务主体分配给工作区,或者创建一个新的。
若要创建新的服务主体,请单击搜索框中的下拉箭头,然后单击+添加新的服务主体.
请注意
如果您的工作空间未启用联合身份验证,则不能将现有帐户服务主体分配到工作区,也不能使用管理控制台将新服务主体添加到工作区。
使用REST api将服务主体分配给工作空间
可用于将服务主体分配给工作空间的REST api取决于工作空间是否启用联合身份验证:
为身份联合启用的工作区:帐户管理员可以使用帐户级别的工作区分配API将服务主体分配到工作区。帐户管理员或工作空间管理员都可以使用工作空间级别的工作空间分配API来执行此任务。看到工作区分配(帐户)API和工作区分配(工作区)API引用
没有为身份联合启用工作区:工作空间管理员可以使用工作空间级的SCIM (ServicePrincipal) API将服务主体分配到他们的工作空间。看到工作空间的SCIM API 2.0 (ServicePrincipals).
从工作区中删除服务主体
帐户管理员可以从中删除服务主体identity-federated工作区使用以下方法:
帐户控制台
工作空间分配API
工作空间管理员可以使用以下方法从工作空间中删除服务主体:
工作空间管理控制台(如果为标识联合启用了工作空间)
工作空间级别的SCIM (ServicePrincipals) API
工作空间分配API(如果为身份联合启用了工作空间)
使用帐户控制台从工作区中删除服务主体
若要使用帐户控制台从工作区中删除服务主体,必须启用工作区联合身份验证.
点击工作区.
在权限选项卡,查找服务主体。
单击烤肉菜单在服务主行最右侧并选择删除.
在弹出的确认对话框中,单击删除.
使用管理控制台从工作区中删除服务主体
若要使用管理控制台从工作空间删除服务主体,必须启用该工作空间联合身份验证.
作为一个工作空间管理员,登录到Databricks工作空间。
在Databricks工作区的顶部栏中单击您的用户名并选择管理控制台.
去管理控制台.
在服务主体选项卡,找到服务主体并单击在用户行最右边。
点击删除来确认。
使用REST api从工作区中删除服务主体
可用于从工作空间删除服务主体的REST api取决于工作空间是否启用了身份联合,如下所示:
为身份联合启用的工作区:帐户管理员可以使用帐户级别的工作空间分配API从工作空间中删除服务主体。帐户管理员或工作空间管理员都可以使用工作空间级别的工作空间分配API来执行此任务。看到工作区分配(帐户)API和工作区分配(工作区)API引用
没有为身份联合启用工作区:工作空间管理员可以使用工作空间级的SCIM (ServicePrincipal) API从其工作空间中删除服务主体。看到工作空间的SCIM API 2.0 (ServicePrincipals).
管理服务主体的访问令牌
要将服务主体验证为Databricks上的api,管理员可以代表服务主体创建Databricks个人访问令牌。
授予可以使用令牌权限到服务主体。
属性为服务主体创建Databricks个人访问令牌
帖子/令牌管理/代表/令牌
在令牌管理REST API.管理员还可以列出个人访问令牌,并使用相同的API删除它们。
有关为服务主体创建访问令牌的详细步骤说明,请参见Databricks自动化的服务主体.
请注意
不能在Databricks UI中为服务主体创建、列出或管理令牌。
管理服务主体的授权
授权是允许用户、服务主体或组以指定的方式与Databricks交互的属性。授权被分配给工作空间级别的用户。下表列出了用于管理每个授权的工作区UI和API属性名。您可以使用工作区管理控制台和工作区级别SCIM REST接口权限管理。
授权名称(UI) |
授权名称(API) |
默认的 |
描述 |
---|---|---|---|
工作空间的访问 |
|
默认允许。 |
当授予用户或服务主体时,他们可以访问数据科学与工程和Databricks机器学习基于人物的环境。 不能从工作空间管理员中删除。 |
Databricks SQL访问 |
|
默认允许。 |
当授予用户或服务主体时,它们可以访问Databricks SQL。 |
允许无限制地创建集群 |
|
默认情况下不授予用户或服务主体。 |
当授予用户或服务主体时,它们可以创建集群。可以使用。限制对现有集群的访问集群级别的权限. 不能从工作空间管理员中删除。 |
允许创建池(不能通过UI) |
|
不能授予单个用户或服务主体。 |
当授予一个组时,其成员可以创建实例池。 不能从工作空间管理员中删除。 |
要为服务主体添加或删除授权,请使用工作空间的SCIM API 2.0 (ServicePrincipals)API。