--- tags: [credential, 架構] gloss: 做四個 TinyGo/WASM primitive,每個服務只要一份 YAML recipe + 用戶自己的 secret。 created: 2026-05-25 updated: 2026-08-15 --- # 四個 primitive 不是每服務一個零件 ← [[credential_parts]] ## 摘要 credential 設計的核心主張。它是三層模型:primitive(程式)/recipe(公共設定)/secret(私有)。 ## 重點 - **四個 primitive** 涵蓋所有認證方式,不隨服務數量成長 - **recipe 存平台 KV(公共)、secret 存 tenant KV(私有)**,runtime 由 AuthBroker 組裝 - 它明確反對 [[n8n 的每服務一零件]] - ⚠️ 本卡只涵蓋這份 29KB 文件的 §0–§2;`§3 四個 primitive 詳細規格`、`§4 Recipe Schema` 等**尚未分段萃取** ## 實體 - **primitive**(零件)— TinyGo/WASM 寫的認證原語,共四個。 - **recipe**(設定)— 每服務一份 YAML,存公共 KV。 - **AuthBroker**(組裝者)— runtime 把 recipe 與 secret 組成可用的 HTTP client。 ## 關聯 ### 內文知識關係 - primitive >> 加上 >> recipe 與 secret - AuthBroker >> 組裝 >> 可用的 HTTP client - recipe >> 存於 >> 公共 KV - secret >> 存於 >> tenant KV ### 卡片關係 - 四個 primitive 不是每服務一個零件 >> 反的是 >> [[n8n 的每服務一零件]] - 四個 primitive 不是每服務一個零件 >> 屬於 >> [[credential_parts]] ### 出處(原文 >> 提及 >> 本卡,可多筆) - `../credential_parts.md` >> 提及 >> 四個 primitive 不是每服務一個零件