設定概覽
步驟 1:建立 Slack App
- 前往 api.slack.com/apps
- 點擊 Create New App
- 選擇 From scratch
- 輸入應用程式名稱:
Panguard Security(或您偏好的名稱) - 選擇您的 Workspace
- 點擊 Create App
步驟 2:設定 Bot 權限
- 在左側邊欄中導航至 OAuth & Permissions
- 捲動至 Scopes 區段
- 在 Bot Token Scopes 下新增:
| 範圍 | 用途 |
|---|---|
chat:write | 發送訊息至頻道 |
chat:write.public | 發送至 Bot 尚未加入的公開頻道 |
files:write | 上傳 PDF 報告和附件 |
- 在頂部點擊 Install to Workspace
- 點擊 Allow 進行授權
步驟 3:取得 Bot Token
安裝後,頁面會顯示您的 Bot User OAuth Token:步驟 4:取得 Signing Secret
- 在左側邊欄中導航至 Basic Information
- 找到 App Credentials 區段
- 點擊 Signing Secret 旁的 Show
- 複製並儲存該值
步驟 5:建立通知頻道
- 建立一個 Slack 頻道(例如
#security-alerts) - 邀請 Bot:在頻道中輸入
/invite @Panguard Security
步驟 6:設定 Panguard Chat
- Bot Token — 步驟 3 中的
xoxb-...權杖 - Signing Secret — 來自步驟 4
- Default Channel — 例如
#security-alerts
測試連線
Bot 未在頻道中發文
Bot 未在頻道中發文
確保 Bot 已透過
/invite @Panguard Security 被邀請至目標頻道。權限錯誤
權限錯誤
驗證 Bot 是否擁有
chat:write 範圍。檢查應用程式的 OAuth & Permissions 頁面。權杖格式無效
權杖格式無效
權杖必須以
xoxb- 開頭。如果以 xoxp- 開頭,表示您使用的是 user token 而非 bot token。互動按鈕(可選)
在 Slack 通知中啟用互動式威脅回應按鈕(例如「封鎖來源」、「查看詳情」):- 在 Slack App 設定中,導航至 Interactivity & Shortcuts
- 啟用 Interactivity
- 將 Request URL 設定為:
https://your-server.com/webhook/slack - 點擊 Save Changes
互動按鈕需要您的 Panguard 實例擁有一個公開可存取的 URL。對於本地開發,可以使用 ngrok 等工具提供臨時的公開 URL。
Block Kit 訊息格式
Slack 通知使用 Block Kit 進行豐富格式:- 標題 — 嚴重性色彩指示器搭配威脅標題
- 上下文 — 時間戳、來源 IP、信心評分
- 詳情 — 包含規則名稱、MITRE ATT&CK ID、受影響資源的結構化欄位
- 動作 — 互動按鈕(當互動功能啟用時)