JSON 設定檔
若要客制化 Enki Outlook 傳統版增益集 的行為,請建立一個名為 config.json 的檔案,並將其放置於此增益集的安裝資料夾(預設為 Program Files\Eventus\Enki Outlook Add-in)。若此檔案不存在,或無法解析,增益集將回退至預設值——也就是說,在您完成設定之前,垃圾郵件回報與寄出前提示都會維持關閉狀態。
設定檔範例
{
"reportSpam": true,
"promptSendToExternal": true,
"spamReportConfig": {
"buttonText": "Report Spam",
"contextMenuText": "Report Spam",
"promptMsg": "Are you sure you want to report this email?",
"promptType": "simple",
"completePrompt": "Thank you for reporting this email.",
"submitTo": "security@yourcompany.com",
"promptSend": false,
"deleteSentItem": true,
"deleteOriginal": true,
"exportType": "eml"
},
"externalPromptConfig": {
"promptType": "simple",
"promptMsg": "You are sending this email to $$externalcount$$ external recipient(s). Are you sure you want to send it?",
"useGALCheck": true,
"useSmtpDomainCheck": true,
"externalSmtpDomains": [],
"internalSmtpDomains": ["yourcompany.com"],
"resultHeader": "X-Enki-Result"
}
}
若 useSmtpDomainCheck 為 true,且 externalSmtpDomains 與 internalSmtpDomains 皆為空,增益集會將所有收件人都視為內部收件人——寄出前提示將完全不會觸發。請務必至少在 internalSmtpDomains 中列出您自己的內部網域,如上方範例所示。
頂層選項
| 參數 | 類型 | 說明 |
|---|---|---|
| reportSpam | boolean | 開啟或關閉垃圾郵件/網路釣魚回報按鈕與右鍵選單項目。預設值:false。 |
| promptSendToExternal | boolean | 開啟或關閉針對外部收件人的寄出前提示。預設值:false。 |
| promptExternalUrl | boolean | 開啟連結改寫功能,讓外部郵件中被點擊的連結先經過檢查再開啟。預設值:false。 |
| spamReportConfig | object | 設定垃圾郵件/網路釣魚回報功能。詳見垃圾郵件回報設定。 |
| spamReportRules | array | 依據被回報郵件的標頭,覆寫 spamReportConfig 設定的逐則規則。詳見垃圾郵件回報覆寫規則。 |
| externalPromptConfig | object | 設定寄出前外部收件人警示。詳見寄出前提示設定。 |
| externalUrlPromptConfig | object | 設定使用者點擊被判定為外部連結時所顯示的警示。詳見外部連結提示設定。 |
垃圾郵件回報設定
巢狀於 spamReportConfig 之下。
| 參數 | 類型 | 說明 |
|---|---|---|
submitTo | string | 回報郵件寄送的目標信箱地址。此欄位為回報功能運作的必要條件——若未設定,回報郵件將沒有收件人。 |
buttonText | string | 顯示於功能區回報按鈕上的文字。 |
contextMenuText | string | 顯示於右鍵選單項目中的文字。 |
promptType | string | "simple" 會顯示一般確認對話框;其他任何值則會顯示更詳細的回報表單。 |
promptMsg | string | 當 promptType 為 "simple" 時所顯示的確認訊息。 |
completePrompt | string | 回報成功送出後所顯示的訊息(且未符合任何覆寫規則時)。 |
promptSend | boolean | 若為 true,寄出前會先將已撰寫好的回報郵件顯示給使用者確認。若為 false,則會自動寄出。預設值:false。 |
deleteSentItem | boolean | 若為 true,且 promptSend 為 false,已寄出的回報郵件會從使用者的寄件備份資料夾中移除。預設值:true。 |
deleteOriginal | boolean | 若為 true,且 promptSend 為 false,原始被回報的郵件會從使用者的信箱中移除。預設值:true。 |
exportType | string | "eml" 會將原始郵件以 .eml 檔案附加;其他任何值則會以 .msg 附加。預設值:"eml"。 |
emailSubject | string | 回報郵件的主旨。支援 $$reason$$ 與 $$subject$$ 佔位符——詳見常用佔位符。 |
includeSmtpHeader | boolean | 若為 true,被回報郵件的原始 SMTP 標頭會包含在回報內容中。預設值:false。 |
includeSmtpHeaderAsAttachment | boolean | 若為 true(且 includeSmtpHeader 也為 true),標頭資訊會以文字檔附件的形式附加,而不會直接放入內文中。預設值:false。 |
additionalInfoContent | string | 附加於回報內容中的額外自由文字內容。支援 $$reason$$ 佔位符。 |
由於目前版本存在一個已知缺陷,exportType 目前必須完全依照此處所示的方式輸入——exportType——但增益集內部的 JSON 綁定鍵名實際上有拼字錯誤。若您已設定 exportType,但回報郵件匯出的格式與預期不符(例如預期是 .msg 卻匯出成 .eml,反之亦然),請聯絡 Eventus 技術支援;此問題將於未來版本中修正。
垃圾郵件回報覆寫規則
spamReportRules 是一份規則清單,會依照清單中出現的順序依序評估。第一條符合條件的規則,會針對該次回報覆寫 spamReportConfig 中對應的欄位——這對於依據郵件安全防護系統所加入的標頭,將回報導向不同信箱十分有用(例如將確認為網路釣魚演練命中的郵件,寄至與一般垃圾郵件回報不同的信箱)。
| 參數 | 類型 | 說明 |
|---|---|---|
type | string | 要評估的條件:"headerexists" 或 "headernotexists"。 |
value | string | 要檢查的標頭名稱。 |
submitTo | string | 針對此規則覆寫 spamReportConfig.submitTo。 |
completePrompt | string | 針對此規則覆寫 spamReportConfig.completePrompt。 |
emailSubject | string | 針對此規則覆寫 spamReportConfig.emailSubject。 |
additionalInfoContent | string | 針對此規則覆寫 spamReportConfig.additionalInfoContent。 |
寄出前提示設定
巢狀於 externalPromptConfig 之下。此設定用於控制使用者即將寄送郵件給組織外部收件人時所顯示的警示。
| 參數 | 類型 | 說明 |
|---|---|---|
promptType | string | "simple" 會顯示一般確認對話框;其他任何值則會顯示更詳細的提示內容。 |
promptMsg | string | 顯示給使用者的訊息。支援 $$externalcount$$、$$internalcount$$ 與 $$totalcount$$ 佔位符——詳見寄出前提示佔位符。 |
expandGroup | boolean | 若為 true,在判斷收件人是內部還是外部之前,會先展開群組成員的完整地址清單。預設值:true。 |
useGALCheck | boolean | 若為 true,未出現在貴組織通訊錄(GAL)中的收件人將被視為外部收件人。預設值:true。 |
useSmtpDomainCheck | boolean | 若為 true,收件人網域會與 externalSmtpDomains/internalSmtpDomains 比對,取代或搭配通訊錄檢查一併使用。預設值:false。 |
externalSmtpDomains | array | 應一律視為外部的網域,即使其他檢查方式判定並非如此。 |
internalSmtpDomains | array | 應視為內部的網域。當 useSmtpDomainCheck 為 true 時為必要設定——詳見上方警示說明。 |
resultHeader | string | 寫入已寄出郵件的自訂標頭名稱(例如 X-Enki-Result),用於記錄該郵件是否曾寄往任何外部收件人——可供後續郵件流程規則或稽核使用。 |
外部連結提示設定
巢狀於 externalUrlPromptConfig 之下。當啟用 promptExternalUrl 時,此設定會控制使用者點擊 Enki 判定為外部連結時所顯示的警示。
| 參數 | 類型 | 說明 |
|---|---|---|
promptType | string | "simple" 會顯示一般確認對話框;其他任何值則會顯示更詳細的提示內容。 |
promptMsg | string | 開啟連結前顯示的訊息。 |
useDomainCheck | boolean | 若為 true,連結的網域會與 externalDomains/internalDomains 比對,以決定是否顯示提示。預設值:false。 |
externalDomains | array | 應一律視為外部連結的網域。 |
internalDomains | array | 應視為內部(受信任)連結的網域。 |
常用佔位符
可用於 spamReportConfig.emailSubject 與 spamReportConfig.additionalInfoContent(以及 spamReportRules 中對應的逐則覆寫設定)。
| 佔位符 | 說明 |
|---|---|
$$subject$$ | 原始被回報郵件的主旨內容。 |
$$reason$$ | 使用者回報時輸入或選取的原因文字。 |
寄出前提示佔位符
可用於 externalPromptConfig.promptMsg。
| 佔位符 | 說明 |
|---|---|
$$externalcount$$ | 被判定為外部收件人的人數。 |
$$internalcount$$ | 被判定為內部收件人的人數。 |
$$totalcount$$ | 收件人總人數。 |