通过


为 Visual Studio Code 中的 Databricks 扩展设置授权

本文介绍如果您尚未通过项目设置进行配置,如何为 Visual Studio Code 的 Databricks 扩展与 Azure Databricks 工作区进行授权和身份验证配置。 请参阅 Visual Studio Code 的 Databricks 扩展

用于Visual Studio Code的 Databricks 扩展实现了 Databricks 统一身份验证标准部分,使你可以配置 Azure Databricks基于 OAuth 2.0 的授权一次,然后在多个Azure Databricks之间使用该配置工具和 SDK,无需进一步授权和身份验证配置更改。 它还提供活动访问令牌的自动刷新,从而减少开发时的过程复杂性。

Databricks 建议使用 OAuth 交互式用户授权,这可以通过使用 Databricks 扩展在 Visual Studio Code 中轻松配置。 请参阅 设置 OAuth 授权和身份验证

否则,如果您使用Azure Databricks 个人访问令牌(旧版)进行身份验证使用 OAuth 授权服务主体访问 Azure Databricks使用 Microsoft Entra 服务主体进行身份验证,请参阅使用配置文件设置身份验证。 使用 Azure CLI 进行身份验证,请参阅设置 Azure CLI 身份验证

注意

用于 Visual Studio Code 的 Databricks 扩展不支持使用 Azure 托管标识(前称 Azure 托管服务标识 (MSI))进行身份验证,但是不使用 Visual Studio Code 的 Databricks 扩展时,Databricks Connect 仍然支持该功能。 若要安装 Databricks Connect,请参阅 Install Databricks Connect for Python

设置 OAuth 授权和身份验证

Azure Databricks支持基于 OAuth 2.0 的授权和身份验证,并使用 Databricks 统一身份验证简化访问令牌管理。 有关用户和服务主体在 Azure Databricks 上的授权详细信息,请参阅 授权访问 Azure Databricks 资源

若要完成 OAuth 授权设置,请使用已启用 Visual Studio Code的 Databricks 扩展打开 VSCode 项目:

  1. 在“配置”视图中,单击“身份验证类型”,然后单击齿轮(“登录 Databricks 工作区”)图标。

    登录到 Databricks 工作区

  2. 如果在此列表中已有一个身份验证配置文件,该配置文件具有“使用 OAuth (用户到计算机)进行身份验证”标签,并且你知道它对应于目标 Databricks 主机,请从列表中选择它,然后执行以下操作:

    1. 如果系统提示,请在 Web 浏览器中完成任何提示信息,以完成 Azure Databricks 的身份验证。
    2. 如果出现提示,请允许 all-apis 访问。
    3. 跳到 选择用于运行代码和作业的计算
  3. 命令面板中,对于“选择身份验证方法”,请单击“OAuth (用户到计算机)”。

  4. 对于选择身份验证方法,选择OAuth(用户对计算机)

  5. 输入关联的 Azure Databricks 身份验证配置文件的一个名称。

  6. 在“配置”视图中,单击“登录到 Databricks”。

    登录到 Databricks

  7. 命令面板中,对于“选择身份验证方法”,选择刚刚创建的身份验证配置文件的名称。

  8. 如果系统提示,请在 Web 浏览器中完成任何提示信息,以完成 Azure Databricks 的身份验证。 如果出现提示,请允许 all-apis 访问。

  9. 成功登录后,返回到Visual Studio Code。

使用配置文件设置身份验证

以下说明假定您已设置一个包含所需字段的Azure Databricks配置文件,以适配您的Azure Databricks身份验证类型。 若要创建配置文件,请参阅 Azure Databricks 配置文件。 若要配置文件的设置,请参阅 Profile 选项卡或部分,查看 授权访问 Azure Databricks 资源

若要选择扩展要使用的配置文件,请在项目和扩展打开的情况下执行以下操作:

  1. 在“配置”视图中,单击“身份验证类型”,然后单击齿轮(“登录 Databricks 工作区”)图标。

    登录到 Databricks 工作区

  2. Command Palette 中,在列表中选择目标Azure Databricks配置文件。

    提示

    稍后可以通过修改目标 workspace 设置(与项目关联的 databricks.yml 配置文件中)来更改目标工作区主机。 请参阅目标

如果没有配置文件,可以使用Azure Databricks个人访问令牌创建一个进行身份验证,如下所示:

  1. 在项目和扩展打开的情况下,在“配置”视图中,单击“身份验证类型”或“登录到 Databricks”,然后单击齿轮(“登录到 Databricks 工作区”)图标。

    登录到 Databricks 工作区

  2. 命令面板中,选择“个人访问令牌”。

  3. 按照屏幕上的提示执行以下操作:

    1. 输入关联的 Azure Databricks 身份验证配置文件的一个名称。
    2. 在Azure Databricks工作区中生成个人访问令牌,然后复制令牌的值。
    3. 返回到扩展并输入复制的令牌的值。

该扩展会在项目中创建一个名为 .databricks 的文件夹(如果尚不存在),其中包含名为 databricks.env 的文件。 此文件包含您输入的工作区宿主,以及Databricks扩展用于Visual Studio Code的其他Azure Databricks配置详细信息。

如果 .gitignore 文件不存在或者在任何父文件夹中找不到现有的 .gitignore,则该扩展还会向项目添加一个隐藏的文件。 如果创建了新的 .gitignore 文件,则该扩展会向此新文件添加一个 .databricks/ 条目。 如果该扩展找到现有的 .gitignore 文件,则它会向该文件添加一个 .databricks/ 条目。

设置Azure CLI身份验证

Azure Databricks支持使用本地安装的 Azure CLI 进行身份验证。 这样,您可以生成短生存期(一小时)的 Microsoft Entra ID 令牌,从而降低意外公开较长生存期令牌(例如 Azure Databricks 个人访问令牌)风险,这些风险可能由于版本控制签入或其他方式而出现。

打开项目和扩展后,在本地安装Azure CLI,请执行以下操作:

  1. 在“配置”视图中,单击“Configure Databricks”。

    注意

    如果“配置 Databricks”不可见,请单击“配置”旁边的齿轮(“配置工作区”)图标。

    用于配置工作区设置的齿轮图标 1

  2. 命令面板中,对于Databricks 主机,请输入您的工作区 URL,例如https://adb-1234567890123456.7.azuredatabricks.net。 然后,按 Enter。

  3. 选择 Azure CLI