PCI DSS

Vibe Prompt

「幫我檢查應用是否符合 PCI DSS 要求:信用卡資料不能儲存、傳輸需加密、存取需控制。」

PCI DSS 12 項要求

| 目標 | 要求 | |------|------| | 建立安全網路 | 1. 防火牆設定 2. 不採用預設密碼 | | 保護持卡人資料 | 3. 保護儲存資料 4. 加密傳輸 | | 管理漏洞 | 5. 使用防毒軟體 6. 安全更新 | | 嚴格存取控制 | 7. 最小權限 8. 唯一 ID 9. 實體安全 | | 監控網路 | 10. 追蹤存取 11. 定期測試 | | 維護政策 | 12. 資安政策 |

儲存信用卡資料

❌ 錯誤:儲存完整卡號與 CVV
   信用卡號: 4111-1111-1111-1111
   CVV: 123

✅ 正確:使用 Token 代替
    Token: tok_visa_abc123def456
    原始卡號: (只存在 Stripe 伺服器)

Stripe 整合(PCI 合規)

// ✅ Stripe 幫你處理 PCI 合規
const stripe = require('stripe')(process.env.STRIPE_SECRET_KEY);

// 建立 PaymentIntent
const paymentIntent = await stripe.paymentIntents.create({
  amount: 999,
  currency: 'twd',
  payment_method: 'pm_card_visa',
  confirmation_method: 'manual',
});

// 你的伺服器從不接觸信用卡號!

傳輸加密要求

# TLS 1.2+,禁用 TLS 1.0/1.1
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;

定期掃描

  • 每季進行 ASV(Approved Scanning Vendor)掃描
  • 每年進行滲透測試
  • 程式碼變更後進行安全審查

合規等級

| 等級 | 交易量(每年) | 要求 | |------|--------------|------| | 第4級 | < 2 萬筆 | SAQ + 季度掃描 | | 第3級 | 2-100 萬筆 | SAQ + 季度掃描 + 滲透測試 | | 第2級 | 100-600 萬筆 | ROC + QSA 稽核 | | 第1級 | > 600 萬筆 | ROC + QSA 稽核 + ASV 掃描 |


關鍵要點

PCI DSS 12 大要求

| 類別 | 要求 | 說明 | |:----:|------|------| | 建立安全網路 | 1. 安裝與維護防火牆 | 隔離信用卡資料環境 | | | 2. 不使用廠商預設密碼 | 更改所有系統的預設密碼 | | 保護持卡人資料 | 3. 保護儲存的持卡人資料 | 加密儲存 + Tokenization | | | 4. 加密傳輸中的持卡人資料 | 強制 TLS 1.2+ | | 管理弱點 | 5. 使用防毒軟體 | 所有系統安裝防毒 | | | 6. 安全開發與維護 | 定期修補 + 安全程式碼審查 | | 存取控制 | 7. 限制資料存取 | 最小權限原則 | | | 8. 唯一 ID 與認證 | 每個人有獨立帳號 + MFA | | | 9. 限制實體存取 | 機房門禁管制 | | 監控與測試 | 10. 追蹤與監控所有存取 | 日誌集中管理 | | | 11. 定期安全測試 | 弱點掃描 + 滲透測試 | | 資訊安全政策 | 12. 維護資訊安全政策 | 書面政策 + 定期審查 |

適用範圍

任何儲存、處理、傳輸信用卡卡號的組織都需要符合 PCI DSS。即使你是使用第三方金流(如 ECPay、Stripe),如果你的系統會接收到卡號,你就需要符合 PCI DSS。



如果你處理信用卡資料,就繞不過 PCI DSS

PCI DSS(支付卡產業資料安全標準)是所有儲存、處理、傳輸信用卡卡號的組織都必須遵守的安全標準。

誰需要符合 PCI DSS?

不只是大型金融機構——任何處理信用卡資料的組織都需要:

  • 電商網站(即使只是串接 ECPay 或綠界)
  • SaaS 平台(如果接受信用卡付款)
  • 實體店面 POS 系統
  • 第三方金流服務商
  • 飯店、訂房平台

不同規模的合規要求

| 你的情況 | 需要的合規等級 | |:--------:|:--------------:| | 使用第三方金流(Stripe/ECPay),卡號不經過你的伺服器 | SAQ A — 約 20 題自我評估 | | 使用第三方金流,但你的網站接收卡號再傳給金流商 | SAQ A-EP — 較嚴格的自我評估 | | 你的伺服器儲存卡號 | SAQ D — 最嚴格的自我評估 + 現場稽核 | | 大型企業,每年處理大量交易 | Level 1 — 需要合格安全評估員 (QSA) 稽核 + 每年弱點掃描 |

如果不符合 PCI DSS 會怎樣?

| 後果 | 詳細說明 | |:----:|:--------:| | 💸 罰款 | 每月 $5,000 - $100,000(由收單銀行決定) | | 🚫 無法收款 | 信用卡公司可以禁止你接受信用卡付款 | | ⚖️ 訴訟 | 資料外洩時持卡人可提起集體訴訟 | | 📉 商譽損失 | 客戶知道你不符合 PCI DSS 後可能不再信任你的平台 |

下一章預告:從 PCI DSS 到 SOC 2

PCI DSS 專注於信用卡資料保護。但如果你的客戶需要更廣泛的保證——例如你的服務是安全的、可用的、機密的——他們會要求你提供 SOC 2 報告

SOC 2 比 PCI DSS 更全面,它涵蓋安全性、可用性、處理完整性、機密性和隱私五個信託服務原則。

解鎖完整教學內容

本章為付費內容。加入專案即可解鎖超過 5000 字的深度解析,包含 10 個以上神級 Prompt 與真實 Source Code 範例!