作业访问控制
本文介绍如何配置对作业的权限。
注意
访问控制仅在高级计划中提供。
通过对作业的访问控制,作业所有者可以控制哪些用户可以查看作业结果或管理作业的运行。 本文介绍各个权限以及配置作业访问控制的方式。
作业权限
作业有 5 个权限级别:“无权限”、“可查看”、“可管理运行”、“是所有者”和“可管理”。 工作区管理员对其工作区中的所有作业拥有“可管理”权限,而作业创建者默认拥有“是所有者”权限。
该表列出了每个权限赋予用户的能力。
能力 | 无权限 | 可查看 | 可管理运行 | 是所有者 | 可管理 |
---|---|---|---|---|---|
查看作业详细信息及设置 | x | X | X | x | |
查看结果 | x | X | X | x | |
查看 Spark UI,作业运行的日志 | x | X | x | ||
立即运行 | x | X | x | ||
取消运行 | x | X | x | ||
编辑作业设置 | x | x | |||
删除作业 | x | x | |||
修改权限 | x | x |
注意
- 仅当你在作业上有“可查看”或更高的权限时,才能查看笔记本运行结果。 即使已重命名、移动或删除作业笔记本,此操作也可以使作业访问控制保持不变。
- 作业访问控制适用于在 Databricks 作业 UI 中显示及运行的作业。 它不适用于以下内容:
- 由笔记本中的模块化或链接的代码触发的运行,这些运行使用笔记本的权限。 如果笔记本工作流是从具有 Git 源的任务创建的,则只能使用
Run as
标识访问运行及其相关文件。 - API 提交的运行,这些运行的权限默认与笔记本捆绑在一起。 但是,可以通过在请求正文中设置
access_control_list
参数来替代默认权限。
- 由笔记本中的模块化或链接的代码触发的运行,这些运行使用笔记本的权限。 如果笔记本工作流是从具有 Git 源的任务创建的,则只能使用
作业所有者
默认情况下,作业的创建者具有 IS OWNER 权限,并且是作业的“运行方式”设置中的用户。 作业在“运行方式”设置中作为用户的标识运行。 有关“运行方式”设置的详细信息,请参阅以服务主体身份运行作业。
工作区管理员可以将作业所有者更改为自己。 转移所有权后,会向前一个所有者授予“CAN MANAGE”权限
注意
当工作区上的 RestrictWorkspaceAdmins
设置设为 ALLOW ALL
时,工作区管理员可以将作业所有者更改为工作区中的任何用户或服务主体。 若要将工作区管理员限制为仅将作业所有者更改为他们自己,请参阅限制工作区管理员。
配置作业权限
此部分介绍如何使用工作区 UI 来管理权限。 还可以使用权限 API 或 Databricks Terraform 提供程序。
必须具有作业的“可管理”或“是所有者”权限才能管理其权限。
在边栏中,单击“作业运行”。
单击作业名称。
在“作业详细信息”面板中,单击“编辑权限”。
在“权限设置”中,单击“选择用户、组或服务主体...”下拉菜单,然后选择用户、组或服务主体。
单击“添加” 。
单击“ 保存”。