4.1 兩套互相隔離的 API 介面
momo-ticket-system 對外有兩條完全分開的路由樹,沒有共用中介層:
/api/*(JWT) | /api/ext/*(API Key) | |
|---|---|---|
| 使用者 | 網頁登入的真人(Zitadel SSO) | 服務帳號式的外部 client(例如 cogwork、Jenkins pipeline) |
| 認證 | Authorization JWT,9 小時到期 | X-API-Key: mtk_xxxx…,可設到期時間、可撤銷 |
| 權限模型 | 角色(General_User / Deploy_User / Admin) | Scope(releases:read、config-server:write 等) |
| 誰在用 | momo-ticket-system 自己的網頁前端 | momo-cogwork、Jenkins pipeline 回報 |
momo-cogwork 只走 /api/ext/*,因為它是無使用者 session 的桌面用戶端,天生不符合 JWT 中介層「要有登入使用者」的假設。