@frigear-nu/oauth-server

中文文档
0.8.0发布于 2026/11/13MITTypeScriptES Module构建来源已验证近 30 天下载 4225

OAuth 2.0 / 为 frigear 生态系统的 OpenID Connect 服务器: 注册具有某些角色的用户可以签名的应用程序.

中文使用文档

@frigear-nu/oauth-server (英语)

OAuth 2.0 / OpenID 连接服务器用于 friger 生态系统. 登记册 应用程序,将其限制为用户 通过您的应用程序(授权代码与 PKCE 相通, 旋转) , 让这些用户签名 刷新地标,RS256 ID地标,RFC 7662回想. 用户可管理哪些应用程序和范围 赠款遵循 @frigear-nu/auth (许可,角色来自 @frigear-nu/authorization页:1 索赔来自 oauth:claims 涅盘钩.

快速设置

要求数 @nuxthub/core 财务报告和审定财务报表 @frigear-nu/users (服务器模式). @frigear-nu/menu (帐砖)和 @nuxt/ui (已运出页)是可选的.

export default defineNuxtConfig({
  modules: ['@frigear-nu/menu', '@frigear-nu/users', '@frigear-nu/oauth-server'],
  oauthServer: {
    issuer: 'https://id.example.com',
    settings: { pages: { admin: true, applications: true } },
  },
})

创建签名密钥并通过环境曝光(公用密钥来源于此):

openssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 | awk 'NF {printf "%s\\n", $0}'
# NUXT_OAUTH_SERVER_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----"

创造并完成迁移 oauth_* 应用程序中的表格(参见仓库) AGENTS.md) (中文(简体) ).

管理应用程序和范围仅需要会话 oauth:manage 权限(发给 admin 角色由 默认). 范围是OIDC范围,每个标志可能持有的许可,以及命名范围: oauthServer.scopes, (中文(简体) ), 模块addScope 联 合 国 @frigear-nu/auth)和范围管理员。 控制每个角色可能给予客户的:

oauthServer: {
  scopes: [{ name: 'tickets', label: 'Your tickets', permissions: ['tickets:read', 'tickets:write'] }],
  settings: { roleScopes: { admin: ['*'], user: ['openid', 'profile', 'email', 'tickets'] } },
}

访问符载 a permissions 索赔,已冻结。 未知范围 /oauth/authorize 答案为 invalid_scope;用户不得授予的已知范围在同意屏幕上显示为不可用.

从早先的释放中移走: addOAuthScope 已丢失( 使用 addScope 从 @frigear-nu/auth/utils,或 addPermission (单位:千美元) resource:action 范围) staffOnly 编辑 oauth:authorize, (中文(简体) ), oauth:scope:staff 财务报告和审定财务报表 oauth:user:roles 钩子( 使用) oauth:manage、权限和作用; allowedRoles (与有效角色相匹配).

附有实例的完整文件: apps/docs/content/3.modules/1.identity/6.oauth-server/index.md。 。 。 .

发展

pnpm --filter @frigear-nu/oauth-server test
pnpm --filter @frigear-nu/oauth-server lint
pnpm --filter @frigear-nu/oauth-server dev

版本与发布记录

@frigear-nu/oauth-server 共发布 30 个版本,首次发布于 2026/10/09;过去 12 个月发布了 30 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.8.0latest2026/11/133 天前
0.7.02026/11/123 天前
0.6.02026/11/123 天前
0.5.12026/11/078 天前
0.5.02026/11/0510 天前
0.4.42026/11/0411 天前

关于 @frigear-nu/oauth-server 的常见问题

@frigear-nu/oauth-server 是什么?

OAuth 2.0 / 为 frigear 生态系统的 OpenID Connect 服务器: 注册具有某些角色的用户可以签名的应用程序.

如何安装 @frigear-nu/oauth-server?

在项目目录运行 npm install @frigear-nu/oauth-server,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@nuxthub/core(^0.10.12)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@frigear-nu/oauth-server 支持 TypeScript 吗?

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

@frigear-nu/oauth-server 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@frigear-nu/oauth-server 可以商用吗?

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

@frigear-nu/oauth-server 的下载量有多少?

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

@frigear-nu/oauth-server 还在维护吗?

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