@azure/identity-vscode

中文文档
2.2.3发布于 2026/10/30MITTypeScriptESM + CJS近 30 天下载 3.2万

使用 Azure 账户扩展名进行视觉工作室代码认证

中文使用文档
文档目录11 节
  1. 先决条件
  2. 安装软件包
  3. 关键概念
  4. Azure 身份插件
  5. 视觉工作室代码认证
  6. 实例
  7. 解决问题
  8. 日志
  9. 今后的步骤
  10. 提供反馈
  11. 捐款

视觉工作室代码认证的 Azure 身份插件

此软件包为 JavaScript 提供了 Azure 身份库的插件(@azure/identity),通过Visual Studio代码的"Azure Resources"扩展来进行认证. 此插件提供了该插件的依赖性 VisualStudioCodeCredential 内 @azure/identity 并使其能够单独使用或作为 DefaultAzureCredential。 。 。 .

源代码 | 样本

先决条件

注:用于地方发展 @azure/identity-vscode,您可能需要安装额外的工具. 节点-gyp 用于编译 加词 用于访问系统 API。 安装需求列于 节点- gyp 读取。 。 。 .

在 Linux 上, 库使用 libsecret 所以你可能需要安装它。 根据您的分布, 您需要运行以下命令 :

  • 德比安/乌班图: sudo apt-get install libsecret-1-dev
  • 红帽型: sudo yum install libsecret-devel
  • Arch Linux : (原始内容存档于2019-09-29) sudo pacman -S libsecret

[注] Visual Studio代码认证目前仅支持在Windows和Linux上. macOS尚未支持.

安装软件包

此软件包被设计为JavaScript与Azure身份一起使用. 安装两者 @azure/identity 使用 npm数字 :

$ npm install --save @azure/identity
$ npm install --save-dev @azure/identity-vscode

支持的环境

JavaScript的Azure身份插件支持从v12开始的Node.js的稳定(甚至编号)版本. 虽然插件可能运行在其他节点版本,但不能保证支持. @azure/identity-vscode 没有 支持浏览器环境.

关键概念

如果这是你第一次使用 @azure/identity 或微软Entra ID,我们建议您阅读 使用 @azure/identity 使用 Microsoft Entra ID 软件 先说 该文件将使您更深入地了解平台以及如何正确配置您的 Azure 账户 .

Azure 身份插件

截止 @azure/identity 4.11.0版本,JavaScript的身份客户端库包含一个插件API. 此套件 (@azure/identity-vscode)导出一个插件对象,您必须将其作为参数传递到顶层 useIdentityPlugin 函数从 @azure/identity 软件包。 通过Visual Studio代码的"Azure Resources"扩展名启用认证如下 :

import { useIdentityPlugin } from "@azure/identity";
import { vsCodePlugin } from "@azure/identity-vscode";

useIdentityPlugin(vsCodePlugin);

打电话后 useIdentityPlugin,则 VisualStudioCodeCredential 从 @azure/identity 软件包将被启用。 如果没有使用此插件, 那么 VisualStudioCodeCredential 将丢出一个 CredentialUnavailableError,而且它不会作为 DefaultAzureCredential。 。 。 .

视觉工作室代码认证

VisualStudioCodeCredential 使用来自 "祖尔资源"扩展。要使用此证书,您必须使用扩展名在您的 Azure 账户上签名。 为此,打开Visual Studio代码,确保安装扩展,并从 命令调色板 使用"Azure: sign in"选项打开浏览器窗口并签名给Azure. 或者,您可以选择“ Azure: 用设备代码签名” 来使用设备代码流 .

签入后,可能需要选择订阅(例如,如果您有多个Azure订阅),可以通过使用菜单来选择"Azure:选择订阅"条目来更改活动订阅.

该插件会自动检测由Azure资源扩展存储的认证记录并用于认证.

实例

插件注册后,您就可以使用 VisualStudioCodeCredential 与其他证书类类似的方式 @azure/identity数字 :

import { useIdentityPlugin, VisualStudioCodeCredential } from "@azure/identity";
import { vsCodePlugin } from "@azure/identity-vscode";

useIdentityPlugin(vsCodePlugin);

const credential = new VisualStudioCodeCredential();

// The graph.microsoft.com scope is used as an example
const scope = "https://graph.microsoft.com/.default";

// Print out part of the access token
console.log((await credential.getToken(scope)).token.substr(0, 10), "...");

您还可以使用 DefaultAzureCredential,它将试图使用"Azure Resources"扩展名认证Visual Studio代码,如果可用的话:

import { useIdentityPlugin, DefaultAzureCredential } from "@azure/identity";
import { vsCodePlugin } from "@azure/identity-vscode";

useIdentityPlugin(vsCodePlugin);

// With the plugin enabled above, `DefaultAzureCredential` will use
// Visual Studio Code's "Azure Resources" extension to authenticate if
// it is available.
const credential = new DefaultAzureCredential();

// This will print a JWT access_token and its expiration timestamp
// The graph.microsoft.com scope is used as an example
console.log("Token:", await credential.getToken("https://graph.microsoft.com/.default"));

解决问题

日志

允许伐木可能有助于发现有关失败的有用信息。 为了查看 HTTP 请求和回复的日志,设置 AZURE_LOG_LEVEL 环境变量改为 info。或者,可以在运行时拨打 setLogLevel 输入 @azure/logger数字 :

import { setLogLevel } from "@azure/logger";

setLogLevel("info");

今后的步骤

提供反馈

如果你遇到错误或有建议,请 打开一个问题。 。 。 .

捐款

如果您想为图书馆捐钱 请读一下 贡献指南 学习如何构建和测试密码.

版本与发布记录

@azure/identity-vscode 共发布 417 个版本,首次发布于 2021/06/23;过去 12 个月发布了 72 个版本。

版本发布日期距今
2.2.3latest2026/10/308 天前
2.2.22026/09/161 个月前
2.2.12026/08/192 个月前
2.2.02026/04/106 个月前
2.1.0-alpha.20260310.1dev2026/03/117 个月前
2.1.0-alpha.20260309.22026/03/107 个月前

其他发布通道:beta → 2.0.0-beta.1,dev → 2.1.0-alpha.20260310.1。

关于 @azure/identity-vscode 的常见问题

@azure/identity-vscode 是什么?

使用 Azure 账户扩展名进行视觉工作室代码认证

如何安装 @azure/identity-vscode?

在项目目录运行 npm install @azure/identity-vscode,或使用 pnpm add / yarn add / bun add。

@azure/identity-vscode 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@azure/identity-vscode 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@azure/identity-vscode 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@azure/identity-vscode 可以商用吗?

@azure/identity-vscode 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@azure/identity-vscode 的下载量有多少?

根据 npm 官方下载统计,@azure/identity-vscode 在 2026/10/08 – 2026/11/06 这 30 天内被下载 31,639 次,日均约 1,055 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@azure/identity-vscode 还在维护吗?

最新版本 2.2.3 发布于 2026/10/30(8 天前);至今共发布 417 个版本,其中过去 12 个月发布了 72 个;首次发布于 2021/06/23。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。