安全政策與敏感資料管理

GitHub 進階概念

Stan Konkin

ML Enthusiast, DataCamp

總覽

 

資料科學家,保護公司資料免於兩名搶匪

 

  • 🔑 建立安全政策

 

  • ⚙ 移除敏感資料

 

  • 🛠 管理歷史提交
GitHub 進階概念

設定安全政策

 

SECURITY.md:
  • 📝 目的:指引回報安全問題
  • 🔑 重點:聯絡資訊、提報規範、回應時程
  • 🛠 客製化:依專案需求調整

SECURITY.md 範例

GitHub 進階概念

設定 SECURITY.md 檔案

設定 SECURITY.md 檔案

GitHub 進階概念

設定 SECURITY.md 檔案

在 Security 分頁檢查 SECURITY.md

GitHub 進階概念

提交敏感資料的風險

 

  • 曝露:機敏資料外洩風險
  • 🔒 未授權存取:他人進入我們的系統
  • 🚨 迅速處理:儘快移除以降低風險

 

 

 

 

 

含敏感資料的提交

GitHub 進階概念

提交敏感資料

提交含敏感資料的檔案

  • 📢 立刻處置:若憑證外洩,請馬上更換
GitHub 進階概念

刪除或編輯檔案的限制

敏感資訊仍在提交歷史中

在 delete secrets.py 提交中仍有敏感資料

GitHub 進階概念

移除敏感資料:兩款工具比較

 

git filter-repo:

  • 可控性:細緻管理歷史

 

  • 🔧 較複雜:適用複雜情境

 

  • 🛠 多功能:支援多種任務

 

BFG Repo-Cleaner:

  • 快速:操作簡單、執行快

 

  • 🛠 大量作業:適合大規模刪除

 

  • 🔒 開源:著重速度
1 docs.github.com/en/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository
GitHub 進階概念

使用 BFG Repo-Cleaner 的高階流程

 

 

  • ⚙ GitHub 介面不利進階作業
  • 🛠 使用終端機指令移除敏感資料
  • 💾 下載 bfg.jar 執行 BFG Repo-Cleaner

BFG Repo-Cleaner

要下載的 bfg.jar 檔案

1 rtyley.github.io/bfg-repo-cleaner/
GitHub 進階概念

清理流程收尾

提交歷史

Delete secrets.py 的歷史已覆寫

GitHub 進階概念

一起來練習吧!

GitHub 進階概念

Preparing Video For Download...