VIBE CODING FIELD GUIDE · CHAPTER 04

資料庫與資安:SQL、PostgreSQL、Supabase、Auth、Token

軟體上線後,最危險的問題通常不是按鈕不好看,而是資料遺失、權限錯誤與憑證外洩。

適合第一次用 AI 寫網站、應用程式或自動化工具的讀者。更新:2026 年 11 月 5 日。

返回完整知識地圖

先用一句話理解

分辨 SQL、PostgreSQL、Redis、Object Storage、Vector Database、Supabase,以及 Authentication、Authorization、OAuth、JWT、RBAC。

不要只記縮寫。要能回答:這個技術是什麼類型、負責什麼、與哪些工具相依、出問題時要查哪一層。

資料與安全:基礎名詞與具體例子

名詞白話解釋使用情境
SQL查詢與操作關聯式資料的語言。SELECT 查詢會員資料。
PostgreSQL / MySQL常見關聯式資料庫系統。訂單、付款狀態與會員資料。
SQLite嵌入式輕量關聯式資料庫。小型 App 的本機資料。
MongoDB文件型資料庫。儲存多樣結構的文件。
Redis常用於快取、狀態或佇列的高速資料儲存。快取熱門商品資訊。
Object Storage適合存放圖片、影片與檔案。上傳商品照與 PDF。
Vector Database支援向量近似搜尋與語意檢索的系統類型。依語意找客服知識段落。
Supabase以 PostgreSQL 為核心的後端平台。資料庫、Auth、Storage、Edge Functions。
Authentication確認使用者或程式身分。登入後確認是誰。
Authorization判斷已辨識的身分能進行哪些操作。住戶只能編輯自己的住所。
RBAC依使用者角色分配權限。管理員、編輯者、訪客。
Token / JWTToken 可作為憑證;JWT 是帶有宣告的特定格式。帶有權限資訊的存取 Token。
OAuth 2.0標準化委託授權框架。允許第三方 App 取得限定權限。
Least Privilege只給執行工作所必需的最小權限。住戶 Token 不得修改社區設定。

常見混淆:它們究竟差在哪?

SQL vs PostgreSQL

SQL 是語言;PostgreSQL 是實際資料庫。

Authentication vs Authorization

登入成功不代表擁有修改全部資料的權利。

Object Storage vs Database

照片與影片通常適合物件儲存;訂單關係適合關聯式資料庫。

實作時的三個檢查點

  1. 先畫出資料表與資料擁有者,再要求 AI 生成程式。
  2. 所有敏感資料存取均在伺服器端驗證權限,不只隱藏按鈕。
  3. 安排備份、復原演練、金鑰輪替、日誌及資料保留政策。

常見問題 FAQ

用了 Supabase 還需要自己寫後端嗎?

未必需要傳統長駐後端,但通常仍要設計安全規則、資料存取政策及必要的伺服器端邏輯。

JWT 是加密的嗎?

常見簽章 JWT 主要保證內容完整性,不代表內容已加密;避免在載荷放入機密資料。