Skip to content

IAM 项目指南

IAM 是基于 Better Auth 的企业统一身份认证中心,作为 OAuth 2.1 / OpenID Connect Provider,为内部应用提供统一登录、用户身份、应用准入与角色 claims。

  • Web:Next.js 16、React 19、Tailwind CSS 4、shadcn/ui、TanStack Query/Table
  • API:Hono、tRPC、Better Auth 1.7.1
  • 数据:PostgreSQL(Neon)、Drizzle ORM
  • 基础设施:Cloudflare Workers、Service Binding、R2、Email Binding
  • 工程化:pnpm 10、Turborepo、oxlint、oxfmt、Vitest、Playwright
graph LR
    Browser[浏览器] --> Web[iam-web / Next.js]
    Web -->|AUTH_API Service Binding| Server[iam-api / Hono]
    Server --> Auth[Better Auth + OAuth Provider]
    Server --> TRPC[tRPC]
    Server --> R2[R2 UPLOADS]
    Auth --> DB[(PostgreSQL)]
    TRPC --> DB
    Auth --> Email[Cloudflare EMAIL]
    WeCom[企业微信] --> Server

生产公开入口统一为 https://iam.cq-i.cn。浏览器访问同源 /api/*,由 Web Worker 转发到 iam-api,避免认证 Cookie 和 issuer 跨域分裂。

项目状态和后续工作以仓库根目录 TODO.md 为准。