IT 基礎設施 & 資安

外寄郵件攔截系統

以 Spring Boot 為核心,整合 LDAP 黑名單監控,自動攔截高風險人員外寄郵件,透過 iDempiere ERP Workflow 通知主管審查放行,防止機密資料外洩。

免費諮詢方案
外寄郵件攔截系統

您面對的挑戰

  • 離職申請中的員工或被列入觀察名單的人員,仍可透過公司信箱對外寄送檔案,資安漏洞難以補
  • 郵件外洩事件往往在事後才被發現,無法即時阻止
  • 現有郵件伺服器缺乏與 HR 系統的連動,無法自動識別高風險人員
  • 攔截後需靠 IT 人員手動通知主管,流程繁瑣且容易遺漏
  • 主管無法在行動裝置上即時審查並放行被攔截的郵件

我們的解決方案

Spring Boot 建置郵件攔截代理服務,介接企業現有 SMTP 伺服器(iRedMail / Postfix),在郵件實際送出前即時比對 LDAP 黑名單(包含被列管員工、離職申請中人員、受調查對象)。一旦觸發攔截規則,系統自動透過 iDempiere ERP Workflow 建立審查工單,通知主管透過 Web UI 或 iDempiere Mobile App 查閱郵件內容與附件,一鍵審查放行或永久封鎖,全程留有稽核日誌。

🔄 攔截審查流程

1
員工發送郵件
郵件進入 Spring Boot 攔截代理,尚未實際送出
2
LDAP 黑名單比對
即時查詢 LDAP,比對寄件人是否在受監控名單內;同時檢查附件類型、收件人網域等規則
3
觸發 iDempiere Workflow
命中規則後自動在 ERP 建立「郵件審查工單」,依員工部門指派給對應主管
4
主管審查(Web UI / Mobile)
主管收到推播通知,可在 Web 管理介面或 iDempiere Mobile App 查閱郵件主旨、內文、附件
5
放行 / 封鎖
主管一鍵放行(郵件正常送出)或封鎖(通知寄件人並記錄事件);全程寫入稽核日誌

核心功能

🔍 LDAP 黑名單動態同步

HR 在 AD / LDAP 將員工加入受監控群組後,攔截規則即時生效,無需重啟服務,提出離職申請當天即可啟動監控封鎖。

📋 多維攔截規則

除黑名單外,支援收件人網域白名單、附件類型(.xlsx / .pdf / .dwg 等)、郵件大小、關鍵字等多重條件組合。

📱 行動審查放行

主管透過 iDempiere Mobile App 接收推播、查閱郵件內容與附件,不需回到辦公室即可完成審查,縮短回應時間。

🖥️ Web 管理後台

資安管理員可在 Web UI 集中管理黑名單、查閱攔截歷程、統計各部門攔截數量,並匯出合規報告。

⏱️ 審查逾時自動處理

可設定審查期限,逾時自動升級至上層主管或依預設規則自動封鎖,避免郵件無限期滯留。

📁 完整稽核日誌

每筆攔截事件完整記錄寄件人、收件人、附件清單、攔截原因、審查人員與最終處置,符合 ISO 27001 要求。

核心技術

Spring Boot
郵件攔截代理服務核心,提供 REST API 與 Web 管理後台
GitHub ↗
iDempiere ERP
Workflow 引擎驅動審查流程,Mobile App 供主管隨時審查放行
GitHub ↗
OpenLDAP
企業目錄服務,黑名單群組即時同步至攔截引擎
GitHub ↗
iRedMail / Postfix
企業 SMTP 伺服器,Spring Boot 代理介接於送出前攔截
GitHub ↗
PostgreSQL
儲存攔截規則、審查記錄與稽核日誌
GitHub ↗
Wazuh
攔截事件寫入 SIEM,與整體資安監控平台整合告警
GitHub ↗

操作說明

以下截圖說明系統各階段操作方式,點選章節標題旁的連結圖示可複製該段落的直連 URL。

1. 系統整體流程

攔截代理服務在 SMTP 傳輸層介入,比對 LDAP 黑名單後決定是否觸發 ERP Workflow 審查。

外寄郵件攔截系統整體流程

2. 系統設定

在ERP 使用者管理,針對要審查對象勾選 IsMailMonitor

系統設定畫面

3. 操作步驟示範

以下三張截圖呈現從觸發攔截到建立審查工單的完整操作畫面。

操作截圖 1 操作截圖 2 操作截圖 3

4. 主管審查放行

主管在 iDempiere Mobile App 或 Web UI 收到通知後,查閱郵件內容並一鍵放行或封鎖。

主管審查放行步驟一 主管審查放行步驟二

在資料外洩前攔截,而不是事後追查

TopGiga 提供外寄郵件攔截系統的客製開發、LDAP 整合、ERP Workflow 串接,以及上線後的維運支援。

免費諮詢方案 了解資安監控合規
🟡

銷售循環

🆕 型號申請單
流程圖 ↗
起草
業務填寫新型號申請內容
DocPrepare
DocAction: PR — 確認申請規格
DocAuto
Wait/Sleep — 系統判斷流程路徑
權限:RD分組主管
Set Variable — 設定審核權限群組
通知主管審核
Email 通知 RD 分組主管
主管審核
Sub Workflow — 主管確認型號申請
DocComplete
IsApproved = Y → 型號申請核准
完成通知
Email 通知申請人核准結果
DocReject
IsApproved = N → DocAction: RJ 駁回
駁回通知
Email 通知申請人駁回原因
📋 詢報價
流程圖 ↗
起草
業務填寫報價品項與條件
DocPrepare
系統檢查必填欄位
業務主管確認
確認報價金額與交期
DocComplete
報價單確認發出
→ 轉銷售訂單
🧫 索樣訂單
流程圖 ↗
起草
業務建立索樣需求
文件準備
DocPrepare — 確認索樣品項與數量
DocAuto
系統判斷文件類型 C_DocType_ID = 1000125
索樣訂單分支
Set Variable — 進入索樣流程
文件完成
DocComplete — 索樣訂單確認
通知審核主管
依 Volume / QtyPost 門檻觸發
業務主管審核
Sub Workflow — 確認索樣條件
CEO 審核
FreightAmt > 80,000 或大量時觸發
→ 安排送樣出貨
📅 預計訂單
流程圖 ↗
起草
業務建立預計訂單(交期表)
DocPrepare
確認預計出貨品項與交期
DocAuto
系統自動處理
DocComplete
交期表確認
→ 轉銷售訂單
📄 銷售訂單
流程圖 ↗
起草
業務建立訂單
DocPrepare
確認庫存與交期
業務主管審核
金額 < 門檻
CEO 審核
金額 ≥ 門檻
Email 通知
通知客戶訂單確認
DocComplete
訂單鎖定
→ 安排出貨
📦 出貨單
流程圖 ↗
起草
倉庫備料出貨
DocPrepare
核對品項與數量
DocAuto
自動扣減庫存
DocComplete
出貨完成
→ 開立發票
🧾 客戶發票
流程圖 ↗
起草
財務建立應收發票
DocPrepare
確認金額與稅率
DocAuto
產生應收帳款
DocComplete
發票確認
→ 客戶收款
💳 收款
流程圖 ↗
起草
輸入銀行入帳金額
DocPrepare
對應客戶與帳戶
DocAuto
自動沖銷應收
DocComplete
收款完成
→ 核銷配對
核銷配對
流程圖 ↗
起草
選擇發票與收款
DocPrepare
計算核銷金額
DocAuto
自動配對沖銷
DocComplete
帳款結清
🔵

採購循環

📝 採購申請
流程圖 ↗
起草
部門填寫採購需求品項與數量
DocPrepare
DocAction: PR — 確認採購規格
DocAuto
DocAction: -- — 系統判斷流程路徑
Please Approve Requisition
Sub Workflow — TotalLines > 100 需主管審核
DocComplete
DocAction: CO — 採購申請核准
Open Requisitions
Report — 輸出未結採購申請明細
通知完成
Wait/Sleep — 通知相關人員申請完成
→ 轉採購訂單
📄 採購訂單
流程圖 ↗
起草
採購人員建立訂單
DocPrepare
確認供應商與單價
採購主管審核
簽核採購條件
DocComplete
訂單確認發送供應商
→ 等待進貨
📥 進貨單
流程圖 ↗
起草
倉庫驗收入庫
DocPrepare
核對品項數量與品質
DocAuto
自動增加庫存
DocComplete
進貨完成
→ 對帳開立發票
🧾 廠商發票
流程圖 ↗
起草
財務登錄廠商發票
DocPrepare
比對進貨單與發票金額
DocAuto
產生應付帳款
DocComplete
發票確認
→ 安排付款
💸 付款
流程圖 ↗
起草
財務建立付款單
DocPrepare
確認付款帳戶與金額
財務主管核准
核准付款
DocAuto
自動沖銷應付
DocComplete
付款完成
→ 核銷配對
🟢

財務循環

📒 日記帳
流程圖 ↗
起草
輸入借貸分錄
DocPrepare
驗證借貸平衡
DocAuto
自動計算
DocComplete
分錄過帳
📚 日記帳批
流程圖 ↗
起草
建立批次分錄
DocPrepare
驗證所有分錄
DocAuto
批次計算與驗證
DocComplete
批次過帳
🏦 銀行對帳單
流程圖 ↗
起草
匯入銀行交易明細
DocPrepare
比對系統紀錄
DocAuto
自動比對已知交易
DocComplete
對帳完成
→ 未配對項目處理
🔄 銀行轉帳
流程圖 ↗
起草
設定轉帳帳戶與金額
DocPrepare
確認轉帳明細
DocAuto
產生雙邊分錄
DocComplete
轉帳完成
🩵

固定資產循環

🏷️ 資產新增
流程圖 ↗
起草
財務登錄新購資產
DocPrepare
填寫資產類別、金額與啟用日
DocAuto
自動建立資產卡
DocComplete
資產入帳
→ 資產改良 / 折舊
🔧 資產改良
流程圖 ↗
起草
填寫改良工程內容與金額
DocPrepare
DocAction: PR — 確認資本化改良內容
DocAuto
DocAction: -- — 系統自動計算
通知主管審核
Wait/Sleep — 等待主管確認
主管審核
Sub Workflow — 主管簽核
DocComplete
DocAction: CO — IsValid = Y 改良完成
完成通知
Wait/Sleep — 通知相關部門
Reject 通知
IsValid = N → 駁回通知
Reject
Wait/Sleep — 單據駁回結案
📉 資產折舊
流程圖 ↗
起草
財務建立月折舊批次
DocPrepare
確認折舊方法與期間
DocAuto
自動計算各資產折舊額
DocComplete
折舊分錄過帳
🔄 資產轉移
流程圖 ↗
起草
申請資產部門間轉移
DocPrepare
確認轉出/轉入部門與資產明細
DocAuto
DocAction = VO → 作廢分支
Receiver Notify
Email 通知接收方審核
Receiver Approved
Sub Workflow — 接收方確認
DocComplete
IsValid = Y → 轉移完成
Rejected
IsValid = N → 駁回 (DocAction: RJ)
📊 資產重估
流程圖 ↗
起草
財務建立重估作業
DocPrepare
填寫重估後公允價值
DocAuto
自動計算重估差額
DocComplete
重估入帳
🗑️ 資產報廢
流程圖 ↗
起草
申請資產報廢或出售
DocPrepare
確認殘值與處分損益
DocAuto
自動沖銷帳面價值
DocComplete
資產除帳
🩷

人資循環

🪪 忘刷卡
流程圖 ↗
起草
員工填寫忘刷卡日期與類型
DocPrepare
DocAction: PR — 確認刷卡記錄缺漏
DocAuto
Wait/Sleep — DocAction = VO → 作廢分支
類型判斷
ForgetType = G → 直接完成;其他 → 主管審核
通知主管審核
ForgetType ≠ G → Email 通知主管
主管審核
Sub Workflow — 主管確認忘刷卡事由
DocComplete
IsValid = Y → 補刷記錄核准
完成通知
Wait/Sleep — 通知員工核准結果
駁回
IsValid = N → DocAction: RJ
🗓️ 請假單
流程圖 ↗
員工申請
填寫假別與日期區間
DocPrepare
系統計算剩餘假數
直屬主管審核
確認可否請假
Email 通知
核准結果通知員工
DocComplete
假單核准生效
加班申請
流程圖 ↗
起草
員工填寫加班日期與時數
DocPrepare
單據準備 — DocAction: PR
DocAuto
Wait/Sleep — DocAction = VO → 作廢分支
WaitOneHour
Wait/Sleep — 等待一小時緩衝
HR_validovertimenote_sp
Process — 驗證加班申請合法性
EmailDirectSupervisor
IsValid = Y → Email 通知直屬主管簽核
HR_OvertimeInvalidNotice
IsValid = N → 通知申請無效
Cancel
IsCancelled = Y → Set Variable 取消
Approved
Sub Workflow — 主管審核加班申請
DocComplete
加班核准,計入薪資計算
📈 薪資調整
流程圖 ↗
HR 起草
填寫調薪員工與金額
DocPrepare
確認調薪生效日
HR主管審核
核准調薪
管理層核准
高階主管確認
DocComplete
調薪生效
💰 薪資彙總
流程圖 ↗
起草
HR 建立當月薪資批次
DocPrepare
彙整出勤、加班、調整
DocAuto
自動計算勞健保與稅
DocComplete
薪資確認
薪資條寄送
Email 通知每位員工
🟣

生產循環

🔬 PLM 需求
流程圖 ↗
研發提案
填寫新品研發需求
DocPrepare
說明規格與目標市場
RD 主管審核
評估技術可行性
DocComplete
需求確認
→ PLM 送樣
🧪 PLM 送樣
流程圖 ↗
起草
研發準備樣品
DocPrepare
填寫樣品規格與批號
QM 確認
品管驗樣通過
DocComplete
送樣完成
→ PLM 專案
🗂️ PLM 專案
流程圖 ↗
起草
規劃量產時程與資源
DocPrepare
確認 BOM 與工藝
管理層審核
核准量產計畫
DocComplete
專案啟動
→ 生產訂單
🏭 生產訂單
流程圖 ↗
起草
生管建立生產工單
Doc_Prepare
單據準備 — 確認 BOM、物料與產能
Doc_Auto
判斷生產類型 (productiontype)
通知代理人
productiontype ≠ V 時 Email 觸發
代理人簽核
Sub Workflow — 生產主管確認
組別判斷
DifferenceQty > 0 → 差異數量處理
通知組別主管
依 PartType (正型/PS/OC…) 分派通知
Doc_Complete
工單確認,正式開工
→ 生產工單執行
⚙️ 生產工單
流程圖 ↗
MRPNodeProcessBulider
Process — 初始化生產流程節點
投料
Wait/Sleep — 等待投料作業完成 → ProductionFeeded
攪拌
Wait/Sleep — 攪拌作業
Notice Sampling Role
Email (M) — 通知取樣人員
取樣
Wait/Sleep — 取樣作業
過濾
Wait/Sleep — 過濾作業
MRP_IPQC_Notice_SP
Process — 發送 IPQC 通知
QC Sample Confirm
Sub Workflow — QC 取樣確認 (依廠別分 CP/一般)
IPQC Valid
Wait/Sleep — IPQC 驗證判斷
IPQC 結果通知
IsIPQCPass=Y → 繼續 / NGSP → 重新取樣 / NGST → 重新攪拌 / N → 重工通知
Notice PP
Email (M) — 通知包裝人員準備過濾裝桶
過濾裝桶
Wait/Sleep — 過濾裝桶作業
調整單簽核
Sub Workflow — 依 PartType (正型/RGB/OC/BM/PS) 分流主管簽核
結果審核
Set Variable — IsConfirmed=Y → 完成通知 / N → Reject Notice
DocComplete
生產工單完工
→ 靜置桶槽投料
🛢️ 靜置桶槽投料
流程圖 ↗
申請新工作站代號
若無可用替用代碼,IT 申請 (EX: D1A)
Workshop 設定
Window — 設定靜置桶槽工作站
Workshop 確認
Window — 確認桶槽投料參數
注料程式重啟
重啟注料控制程式
生管投單至替代工作站
EX: D1A — 將工單指派至靜置桶槽
生產完成
靜置桶槽投料作業完成
還原作業
工作站設定還原至原始狀態
Workshop 還原
Window — 還原桶槽工作站設定
Workshop 結案
Window — 確認還原完成,作業結束
→ 洗桶工單
📋 盤點單
流程圖 ↗
起草
倉管建立盤點單
DocPrepare
DocAction: PR — 確認盤點品項與倉別
DocAuto
DocAction: -- — 系統自動處理
盤點單分支
DocSubTypeInv = PI → 進入主管簽核流程
通知主管
Email 通知主管進行盤點審核
主管簽核
Sub Workflow — 主管確認盤點結果
審核結果
Wait/Sleep — 判斷 IsValid
DocComplete
IsValid = Y → 盤點完成,調整庫存
駁回通知
IsValid = N → Email 通知重新盤點
🪣 洗桶工單
流程圖 ↗
起草
生管建立洗桶工單
DocPrepare
確認洗桶桶槽清單
UpdateWorkshopTank
Process — 更新工場桶槽狀態
通知 QC
Email 品管人員準備檢驗
Mail 生管
Email 生管知悉進度
檢驗
Sub Workflow — QC 執行洗桶檢驗
通知再洗桶
IsValid = N → 重新洗桶
UpdateWorkshopTank
Process — 更新桶槽為已洗淨
通知完成
Email 通知洗桶完成
DocComplete
洗桶工單結案
🔴

品質管理

🚨 CAR 申請
流程圖 ↗
品質問題登錄
描述不良現象與數量
DocPrepare
確認問題範圍
品管主管確認
評估嚴重性
DocComplete
開立 CAR
→ 暫時對策
🩹 暫時對策
流程圖 ↗
起草
擬定立即處置方案
DocPrepare
確認對策有效性
主管確認
批准立即實施
DocComplete
對策執行
→ 根本原因分析
🔍 根本原因
流程圖 ↗
起草
5Why / 魚骨圖分析
DocPrepare
填寫根本原因
品管審核
確認分析正確性
DocComplete
根本原因確定
→ 矯正措施跟進
✔️ 矯正跟進
流程圖 ↗
起草
制訂矯正行動計畫
DocPrepare
DocAction: PR — 確認矯正效果驗證方式
DocAuto
Wait/Sleep — 系統判斷流程路徑
NoticeEditor
Email (M) — 通知編輯人員填寫跟進內容
IsSubmit
Sub Workflow — 確認是否已提交驗證
IsValid / DocReject
IsValid=N → DocAction: RJ 退回
NoticeManager
Email (M) — 通知主管審核跟進結果
Approved
Sub Workflow — 主管確認矯正效果
DocComplete
Approved=Y → DocAction: CO — CAR 案件關閉
DocReject
Approved=N → DocAction: RJ — 退回重新矯正

完整 83 個工作流程 → iDempiere AD_Workflow 流程圖