Environment Variable / Secret Management
環境變數/機密管理
01你是不是遇到這個 / THE SYMPTOM
我把 API 金鑰、資料庫密碼、第三方服務的 token 直接寫死在程式碼裡,結果 push 到 GitHub 後才發現別人看得到、甚至被盜刷。我不知道這些東西「正確該放哪」、要怎麼講才對。
↑ 如果你點頭了,你要的關鍵字就是 Environment Variable / Secret Management。
02這是什麼 / DEFINITION
把 API 金鑰、密碼、token 等機密從程式碼中抽出來,改放在環境變數或專用機密管理服務裡,不寫進原始碼、也不進版本控制,避免外洩。
03什麼時候用 / WHEN TO USE
只要程式用到任何金鑰、密碼、連線字串、第三方 API token,就不該硬編碼(hardcode)在程式碼裡,一律改用環境變數或 secret 管理。
04怎麼跟 AI 說 / HOW TO ASK
直接複製這句、貼進 Claude Code / Cursor / Copilot / ChatGPT:
幫我把這段程式碼裡硬編碼的 API key 跟資料庫密碼改成從環境變數讀取,建立 .env 範例檔(.env.example),並把 .env 加進 .gitignore。
05常見坑 / WATCH OUT
⚠ 前端(瀏覽器端)的環境變數不是機密——打包後使用者看得到,真正的密鑰只能放後端。另外若密鑰已經 commit 過,光刪掉沒用,git 歷史還在,必須立刻換掉(rotate)那把金鑰。
06相關的詞 / RELATED