網誌

聊天中不必貼上金鑰的機密與環境變數

大多數真實的應用程式至少需要一個機密:付款服務商的金鑰、電郵服務的金鑰,或 AI API 的金鑰。在 Mythex 中,你不必把這些金鑰貼進提示詞。當代理需要其中一個時,它會在聊天中顯示一張機密請求卡片,你把值輸入卡片內,它就會被儲存為專案機密,讓你的應用程式讀取——金鑰不會出現在對話中。

功能說明

每個 Mythex 專案都可以儲存環境變數:一些有名稱的值,例如 STRIPE_SECRET_KEY,應用程式運行時讀取它們,而不是把它們寫進程式碼。機密就是那些必須保持私密的環境變數。

同樣的值會在兩個地方可用:

  • 沙盒:你工作時,代理在這裡建構和運行你的應用程式。
  • 已發佈的部署:訪客使用的版本。

新增它們有三種方法:

  1. 機密請求卡片:代理需要金鑰才能完成某項工作時,會在聊天中顯示這張卡片。
  2. 專案設定 → 機密:隨時新增或編輯值。
  3. 聊天中的 /secrets:按要求新增或更新機密。

為什麼有幫助

要把金鑰交給 AI 代理,最直接的方法是把它貼進你的訊息。這樣做可行,但金鑰隨即成為聊天記錄的一部分,以純文字形式留在你說過的所有內容旁邊。

機密卡片可以讓金鑰不進入對話紀錄。你在卡片的欄位中輸入,而不是在訊息框中,它會被儲存為專案機密。代理可以在沙盒中使用該金鑰,繼續工作。

把金鑰放在專案設定中,而不是程式碼裡,還有其他好處:

  • 金鑰不會進入原始碼管理。 你的程式碼只以名稱引用金鑰,值則存放在專案設定中。
  • 代理與正在運行的應用程式看到的是同一份設定。 不會出現過時的副本。
  • 無需改寫程式碼即可更換金鑰。 在設定中更改值,程式碼仍會按名稱讀取它。

如果你對環境變數還不熟悉,我們的指南 什麼是環境變數與機密 會從零開始解釋這個概念。

如何使用機密卡片

  1. 提出功能需求,例如「用戶註冊時發送歡迎電郵」。
  2. 代理需要金鑰時,聊天中會出現機密請求卡片,列出它所需的值。
  3. 在卡片的欄位中輸入值,不要在訊息框中輸入。
  4. 確認。 該值會被儲存為專案機密。
  5. 代理繼續工作,金鑰可在沙盒中使用。

如何自行新增機密

  1. 開啟專案設定,然後點選機密。
  2. 新增例如 STRIPE_SECRET_KEY、OPENAI_API_KEY,或你自己服務的憑證。
  3. 要求代理按你所用框架的標準方式讀取它們,例如在 Node 應用程式中從 process.env 讀取。
  4. 如果已發佈的應用程式需要新的值,重新發佈。

你也可以在聊天中輸入 /secrets 來新增或更新它們。

更改已發佈應用程式的機密

已發佈的應用程式會在發佈時載入機密。新增或更改機密後,請再次發佈,讓線上部署取得新值。在此之前,訪客仍在使用舊設定的應用程式。

安全提示

  • 切勿把機密提交到程式庫。 請保存在專案設定中。
  • 特權操作優先使用僅限伺服器的金鑰。 能夠扣款或發送電郵的金鑰,應放在伺服器端運行的程式碼中,而不是訪客瀏覽器會下載的任何內容中。
  • 如果金鑰曾出現在聊天記錄中,請更換它。 在服務商處建立新金鑰、撤銷舊金鑰,然後在專案設定中更新值。任何曾被貼進聊天的金鑰,都應視為已外洩。

限制

  • 這張卡片只有在你使用時才有幫助。 如果你仍然把金鑰貼進訊息框,它就會留在紀錄中。請在服務商處更換金鑰,並更新已儲存的值。
  • 已發佈的應用程式需要重新發佈,才能取得新增或更改的機密。
  • 安全地儲存金鑰,並不代表使用它就一定安全。 金鑰在哪裡使用仍然重要——請把特權金鑰保留在應用程式的伺服器端。

如需進一步了解發佈前如何保障應用程式安全,請參閱我們的 AI 建構應用程式安全檢查清單。

詳細資料請參閱文件:環境變數與機密 及 聊天中的機密。

Mythex · Pricing · 用 AI 建造任何嘢 · 網站及應用程式範本 · Mythex 比較 · AI 應用程式開發詞彙表 · 免費 AI 應用程式開發工具 · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(台灣)