@azure/postgresql-auth

中文文档
1.0.0发布于 2026/09/02MITTypeScriptESM + CJS近 30 天下载 1.7万

用于 JavaScript 的 PostgreSQL 的 Azure Entra ID 认证扩展

中文使用文档
文档目录12 节
  1. 开始
  2. 目前得到支持的环境
  3. 先决条件
  4. 安装 @azure/postgresql-auth 软件包
  5. 关键概念
  6. 实例
  7. 使用节点后缀( pg (中文(简体) )
  8. 使用序列
  9. 解决问题
  10. 日志
  11. 今后的步骤
  12. 捐款

Azure PostgreSQL 地图 JavaScript 的认证客户端库

此软件包为在JavaScript中的PostgreSQL连接提供Azure Entra ID(原Azure Active Directory)认证. 它支持两者 节点员额(pg(中文(简体) ) 财务报告和审定财务报表 排序 客户.

密钥链接 :

开始

目前得到支持的环境

看我们的 支助政策 更多细节.

先决条件

安装 @azure/postgresql-auth 软件包

为 JavaScript 安装 Azure PostgreSQL 认证客户端库 npm数字 :

npm install @azure/postgresql-auth

您还需要安装 @azure/identity 证书支持和您喜欢的 PostgreSQL 客户端 :

npm install @azure/identity pg
# or
npm install @azure/identity sequelize pg

关键概念

这个库为Entra ID认证与PostgreSQL集成提供了两个功能:

  • entraTokenProvider ——返回一个密码提供者功能,该功能获得一个适合用作PostgreSQL密码的Entra ID访问令牌. 用这个 pg.Pool 或者说 pg.Client。 。 。 .
  • configureEntraAuthentication 登记a beforeConnect 钩在序列化实例上,该实例自动获得一新符并在每个新连接之前设置用户名/密码.
  • GetEntraTokenPasswordOptions ——可选地将默认的 OAuth 范围(镜像属性) 传递给 entraToken Provider.
  • SequelizeBeforeConnectHook ——通过配置 EntraAuthentication 接受的结构界面;允许您使用任何序列兼容对象而无需添加硬后继依赖性.

两个函数都接受 Azure TokenCredential (从) @azure/identity),并针对PostgreSQL范围的Azure数据库处理令牌获取.

实例

使用节点后缀(pg(中文(简体) )

import { DefaultAzureCredential } from "@azure/identity";

const { entraTokenProvider } = await import("@azure/postgresql-auth");
const pg = await import("pg");
const credential = new DefaultAzureCredential();
const pool = new pg.Pool({
  host: process.env.PGHOST,
  port: Number(process.env.PGPORT || 5432),
  database: process.env.PGDATABASE,
  user: process.env.PGUSER,
  password: entraTokenProvider(credential),
  ssl: { rejectUnauthorized: true },
});

使用序列

import { DefaultAzureCredential } from "@azure/identity";

const { configureEntraAuthentication } = await import("@azure/postgresql-auth");
const { Sequelize } = await import("sequelize");
const sequelize = new Sequelize({
  dialect: "postgres",
  host: process.env.PGHOST,
  port: Number(process.env.PGPORT || 5432),
  database: process.env.PGDATABASE,
});
const credential = new DefaultAzureCredential();
configureEntraAuthentication(sequelize, credential);
await sequelize.authenticate();

解决问题

日志

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

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

setLogLevel("info");

关于如何启用日志的更详细指示,您可以查看 @ azure/ logger 包文件。 。 。 .

今后的步骤

请看一下 样本 关于如何使用此库的详细示例的目录.

捐款

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

版本与发布记录

@azure/postgresql-auth 共发布 2 个版本,首次发布于 2026/04/29;过去 12 个月发布了 2 个版本。

版本发布日期距今
1.0.0latest2026/09/022 个月前
1.0.0-beta.1beta2026/04/296 个月前

关于 @azure/postgresql-auth 的常见问题

@azure/postgresql-auth 是什么?

用于 JavaScript 的 PostgreSQL 的 Azure Entra ID 认证扩展

如何安装 @azure/postgresql-auth?

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

@azure/postgresql-auth 支持 TypeScript 吗?

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

@azure/postgresql-auth 支持 ESM 还是 CommonJS?

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

@azure/postgresql-auth 需要什么版本的 Node.js?

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

@azure/postgresql-auth 可以商用吗?

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

@azure/postgresql-auth 的下载量有多少?

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

@azure/postgresql-auth 还在维护吗?

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