Files
lijiaoqiao/platform-token-runtime

Platform Token Runtime

token 生命周期、introspection 与审计查询服务。

当前真实状态

  • 服务入口是 cmd/platform-token-runtime/main.go,装配逻辑收口在 internal/app/bootstrap.go
  • 当前可用接口包括 issuerefreshrevokeintrospectaudit-events
  • TOKEN_RUNTIME_ENV=dev 且未显式注入 store 时bootstrap 会自动使用内存 runtime store 与内存 audit store。
  • TOKEN_RUNTIME_ENV=stagingTOKEN_RUNTIME_ENV=prod 时,支持通过 TOKEN_RUNTIME_DATABASE_URL 自动装配 PostgreSQL runtime store 与 audit store未提供 DSN 时仍会快速失败,而不是回退到内存实现。
  • audit-events 当前始终保持可查询接口语义;默认内存 audit store 会返回真实事件,未提供查询能力的自定义 emitter 会返回空结果而不是 501 占位响应。

设计边界

  1. 仅支持 Authorization: Bearer <token> 入站。
  2. 外部 query keykeyapi_keytoken)一律拒绝。
  3. 不在任何响应或审计字段中输出 access token 明文。

本地运行

cd "/home/long/project/立交桥/platform-token-runtime"
go run ./cmd/platform-token-runtime

默认监听 :18081。可通过以下环境变量覆盖:

export TOKEN_RUNTIME_ADDR=":18081"
export TOKEN_RUNTIME_ENV="dev"

PostgreSQL 模式:

export TOKEN_RUNTIME_ENV="prod"
export TOKEN_RUNTIME_DATABASE_URL="postgres://postgres:secret@127.0.0.1:5432/token_runtime?sslmode=disable"
go run ./cmd/platform-token-runtime

验证命令

模块级验证:

cd "/home/long/project/立交桥/platform-token-runtime"
GOCACHE=/tmp/lijiaoqiao-go-cache-platform-token-runtime go test ./...

仓库级统一验证:

cd "/home/long/project/立交桥"
bash scripts/ci/repo_integrity_check.sh

关键文件

  • internal/app/bootstrap.go环境判断、runtime store / audit store 装配。
  • internal/httpapi/token_api.goHTTP 接口与审计查询输出。
  • internal/auth/service/runtime_store.go:内存 runtime store。
  • internal/auth/service/audit_store.go:内存 audit store 与审计查询。
  • internal/auth/service/postgres_runtime_store.goPostgreSQL runtime store。
  • internal/auth/service/postgres_audit_store.goPostgreSQL audit store。