這一站 5 場,你看完 0 場

別把憑證交給 agent,給它授權

029Paola Estefania(Better Auth)40:552026-07-21 上架

Full Workshop: Better Auth — Paola Estefania, Better Auth

別把憑證交給 agent,給它授權的演講縮圖

Paola Estefania 主張 agent 要有自己的身分、細到每個動作的授權與查得到的紀錄,並用 Agent Auth Protocol 現場示範讀信、寄信與撤銷。

這場講了什麼

  • agent 不該冒充使用者:把個人 token 接給 agent,等於讓它假裝成你在行動。Paola Estefania 拿雇人當類比:公司不會把 CEO 的帳密交給新進員工,對 agent 也該給授權(authority),不是給憑證。
  • 三個要解的問題:agent 怎麼知道服務能做什麼(discovery)、怎麼授予具體的權限(authorization)、怎麼知道是哪個 agent 做了什麼(identity)。對應的做法是目錄、capabilities 與每個 agent 自己的私鑰。
  • capabilities 取代 scopes:scope 像 read 這種粗的大塊,capability 切到單一動作;agent 的意圖(intent)對應到一個或數個工具,每個工具可以分別准或不准。
  • 服務還沒支援,先用目錄過渡:現在的服務都還只有 OAuth,所以先把 OpenAPI 描述轉成 capabilities 放進目錄,撐到服務自己實作 agent auth 為止。
  • 現場示範讀信、寄信、撤銷:agent 預設只有讀取能力,要寄信得另外請使用者批准;撤銷之後它會重建一個新的 agent,寄信一樣要再請求一次。
  • 安全但不煩人:每讀一次都要批准,使用者會受不了,所以預設把讀取放寬,其餘靠使用者政策或 host 政策調整。協定開源,新草案正在處理企業情境。

影片從哪一段開始看19 段

  1. 00:12開場與目標原本的另一位講者無法到場,改由 Paola Estefania 一人帶;這場想花一小時一起想 agent 的安全與工具。
  2. 01:12agent 冒充你先問現場誰每天用 agent、誰把 Gmail 或行事曆交給它;這樣做等於 agent 假裝成使用者在行動。
  3. 02:50雇用 agent 的類比新員工有自己的信箱與帳號,不會拿 CEO 的憑證;agent 也該拿到授權,而不是使用者的憑證。
  4. 04:08問題一:發現能力現在 agent 能做什麼都是人工接上去的,理想是像電話簿一樣有個目錄可查。
  5. 05:50問題二:細緻授權只給讀取權限還是不夠安全;應該逐個工具決定准不准,而不是 agent 繼承使用者的一切。
  6. 07:25問題三:身分與追蹤audit log 要記得出哪個 agent 代表哪位使用者做了什麼,就得先有身分;有身分才能單獨撤銷,不必整組斷線。
  7. 09:04capabilities 對 scopes現場幾乎沒人知道 capability;scope 是粗的大塊,capability 切到單一動作,使用者的意圖要對應到工具。
  8. 10:33目錄與 OpenAPI 轉換仿 OIDC 的 well-known,設想一個公開的 agent 設定端點;過渡期把服務的 OpenAPI 轉成 capabilities,現場拿 Notion 的規格示範。
  9. 15:34主體換成 agent有聽眾提到 fine-grained auth;Paola Estefania 回應那仍是替使用者簽發 token,這裡要替 agent 簽發,讓 agent 成為主體(principal)。
  10. 17:12私鑰與 host每個 agent 有自己的私鑰,能簽自己的 token,而且一定掛在某位使用者底下;撤銷可以針對 agent,也可以針對建立它的 host。
  11. 20:55企業情境與開源協定是二月做的,之後出現長期運作、受公司政策管的 agent;新草案正在處理,專案開放大家參與。
  12. 21:57三層一個協定伺服器端驗證 agent、發 grant 的 agent auth plugin,帶 MCP 的 SDK,以及比對意圖與 capabilities 的目錄。
  13. 23:04示範:讀信接上 MCP 後 agent 依意圖查目錄,用 device flow 請使用者批准,讀到最新一封信;之後從紀錄看到 agent ID 與結果。
  14. 26:53示範:寄信預設只有讀取,寄信得另外批准;批准後能力清單多了寄信,信也寄出。
  15. 29:38示範:撤銷撤銷之後 agent 重建一個新的,因為讀取是 host 的預設能力;要寄信又得重新請求批准。
  16. 31:19限制條件與使用體驗最長執行時間之類的限制都能寫進 capabilities;靠使用者政策或 host 政策,在安全與不打擾之間取得平衡。
  17. 34:24只准走協定與 proxy這場的 MCP 只是示範,下一版會收得更緊;所謂 proxy 其實只是目錄,因為真的 proxy 擴充不了。
  18. 37:00結論停止把憑證交給 agent,改成讓它在限制內代你行動;邀大家一起參與。
  19. 39:03與 AI Gateway 的差別其他做法還沒把 agent 當主體;AI Gateway 也還沒給每個 agent 自己的身分。

值得記的話5 句

  • So we are changing the paradigm. We have stopped seeing as an agent that's like hiding behind the user, and now the agent is there as a principal acting.我們在改變典範:不再把 agent 看成躲在使用者背後,而是讓它以主體的身分行動18:38
  • Our idea is like to be safe, but not to be annoying.我們的想法是要安全,但不要煩人32:21
  • proxy is a really bad idea. It's not scalable because proxy uses data.proxy 是很糟的點子,擴充不了,因為 proxy 要經手資料35:56
  • we need to stop giving credentials, our credentials to our agents. We need to give them authority.我們得停止把自己的憑證交給 agent,要給它們授權37:00
  • Should we stop saying like pretend to be me instead of saying like act for me within these limits?是不是該別再說「假裝是我」,改說「在這些限制內代我行動」?37:16

名詞與人物10 個

Agent Auth Protocol
這場介紹的開源協定,替 agent 處理發現、授權與身分三件事
Better Auth
Paola Estefania 所屬的公司,協定第一版與 agent auth plugin 由他們發布
capability
切到單一動作的權限,agent 的意圖對應到一個或數個 capability
scope
粗顆粒的權限,例如 read;這場主張用 capability 取代
directory
像電話簿的目錄,列出服務能做的事,讓 agent 依意圖找到工具;不是 proxy
well-known agent configuration endpoint
仿 OIDC 的 well-known 設想的公開端點,讓服務公布怎麼互動與有哪些 capabilities
host
建立 agent 的地方;可以對 host 設政策,也可以整個撤銷
device flow
示範讀信時請使用者批准的方式,把 agent 當成另一台要連線的裝置
client backchannel authorization
示範寄信時用的批准方式,不必跳轉,直接在原處批准
OpenAPI
多數常見服務都有的規格,過渡期拿來轉成 capabilities

提到但沒有展開

  • 撤銷 agent 之後,已經發出去的 access token 可能還在,Paola Estefania 提到要另外刪掉。
  • 有聽眾問到 skill 改用別的方式呼叫服務的情況:示範版的做法是限制 agent 只能用 MCP 工具,下一版協定要讓 agent 對外取用服務只能走 Agent Auth Protocol。

Agent安全開源開發工具

在 YouTube 看原片 ↗

同一站:AI Safety and Ethics5 場

  1. 用型別系統把 agent 關進證明裡008 · Erik Meijer aka @HeadinTheBox · 21 分
  2. 用 LLM 找洞、驗證、修補程式碼024 · Eugene Yan(Anthropic) · 22 分
  3. 生成者與驗證者不該是同一個026 · Manoj Nair(Snyk) · 23 分
  4. 別把憑證交給 agent,給它授權你在這裡
  5. 上架前先掃過 2,000 個 AI skills060 · Lucas Palma(Nubank) · 16 分