lovefyfandClaude Opus 5 54beb5cf01 docs: Keycloak service 角色与 audience mapper 配置与验证记录
provisioning 服务账号缺 manage-realm 与 manage-clients,①③④ 均被 403 拒绝;
② 因角色未建而阻塞(权限探针返回 404 而非 403,证明补建角色后即可成功);
⑤ web-portal 的 aud-data-service 已存在,未做任何写操作。
已解码验证三个 token 的 aud / realm_access.roles,chaihao 的 Task 11 前置条件成立。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-13 06:37:16 +08:00

bpos-service-gateway

前端唯一入口:BFF 聚合、鉴权与到 task / data / agent 的路由(:8800,无自有库)。

N0 已达能力

  • 同构骨架:与 task / data 仓同形的 Hono 应用与目录布局;GET /health 汇总 nats 依赖状态(无自有库,故无 db 探活)。
  • Keycloak 验签:requireAuth / requireRealmRole / requireService 中间件,JWKS 远端验签。
  • 协议册副本:src/contracts/envelope.ts,真源在 BPOS-Document-Share。
  • NATS 连接助手:getNats / checkNats / closeNats——网关只需连通性(订阅 touch / stream 用),无库故无 outbox、无 relay、无 consumer。

运行方式

pnpm i               # 装依赖
pnpm dev             # 本地起服务(:8800)
pnpm gates           # typecheck + lint + test

本仓无自有库,故无 db:migrate。

S
Description
No description provided
Readme
127 KiB
Languages
TypeScript 99.7%
JavaScript 0.3%