服务主体是用于在 Azure Databricks 中对自动化工作流进行身份验证的非人类标识。 本页介绍如何授权服务主体使用 Git 凭据进行 Git 文件夹操作。
注释
如果将 Azure DevOps 与 Microsoft Entra ID 用于自动化,请参阅 授权 Microsoft Entra 服务主体访问 Git 文件夹 以获取具体配置步骤。
使用 Azure Databricks UI 添加 Git 凭据
将 Git 凭据链接到服务主体:
- 以工作区管理员身份登录到 Azure Databricks 工作区。
- 单击顶部栏中的用户名,然后选择 “设置”。
- 单击“ 标识和访问 ”选项卡。
- 在服务主体旁边,单击管理。
- 选择要使用 Git 凭据更新的服务主体。
- 单击 “Git 集成 ”选项卡。
- 单击 “添加 Git 凭据”。
- 从下拉菜单中选择 Git 提供程序,并填写必填字段。
- 单击“ 保存 ”或 “链接”,具体取决于所选提供商。
服务主体现在在自动化过程中访问 Azure Databricks 工作区 Git 文件夹资源时使用链接的 Git 凭据。
使用 Azure Databricks CLI 添加 Git 凭据
使用 Databricks CLI 配置服务主体 Git 访问,用于自动化工作流。
注释
在开始之前,请确认已做好以下准备:
- 已安装并配置 Databricks CLI 。
- Git 服务提供商的个人访问令牌。 请参阅配置 Git 凭据并将远程存储库连接到 Azure Databricks。
若要使用 Databricks CLI 为服务主体提供对 Git 文件夹的授权访问权限,请执行以下作:
在工作区中创建服务主体:
databricks service-principals create --display-name "Git Automation Service Principal"记下输出中的
applicationId值和id值。 后续步骤中需要用到它们。为服务主体生成 OAuth 机密:
databricks service-principal-secrets-proxy create <service-principal-id>将
<service-principal-id>替换为上一步中的15位id值。从输出中复制
secret值。为服务主体添加 Git 提供程序凭据。
使用 OAuth 将 Databricks CLI 配置为作为服务主体进行身份验证:
export DATABRICKS_HOST=<workspace-url> export DATABRICKS_CLIENT_ID=<application-id> export DATABRICKS_CLIENT_SECRET=<oauth-secret>替换为:
-
<workspace-url>配合工作区 URL 使用 -
<application-id>步骤 1 中的应用程序 ID -
<oauth-secret>使用步骤 2 中的 OAuth 机密
然后添加 Git 凭据:
databricks git-credentials create <git-provider> \ --personal-access-token <git-pat> \ --git-email <git-email>替换为:
- 与您的提供商(例如
<git-provider>或gitHub)一起使用gitLab -
<git-pat>使用 Git 提供程序个人访问令牌 -
<git-email>使用 Git 电子邮件地址
某些 Git 提供程序需要
--git-username或--git-email才能正常进行身份验证。 例如,GitHub 至少需要其中一个参数。-
现在,服务主体可以使用链接凭据访问 Git 文件夹。
以编程方式检索服务主体
使用 Databricks SDK、REST API 或 CLI 检索工作区的服务主体。
若要从笔记本中使用 Databricks SDK,请执行以下作:
- 安装 Databricks SDK:
%pip install databricks-sdk --upgrade - 从
ApiClient导入databricks.sdk.core。 - 调用服务主体 API。
有关代码示例,请参阅 用于 Python 的 Databricks SDK 文档。
还可以使用 curlDatabricks CLI 或 Terraform 以编程方式处理服务主体。