在你的組織內部署 Teams Chat Exporter
給 IT 管理員
Teams Chat Exporter 是一個面向使用者的匯出工具,完全在瀏覽器中以已登入的使用者身分執行。它無需應用程式註冊、無需 Microsoft Graph 管理員同意,也無需租用戶層級的變更。你可以全機隊部署它,並用你現有的瀏覽器管理機制加以控管。
擴充功能 ID
- Chrome:
jmghclbfbbapimhbgnpffbimphlpolnm - Edge:
phlomfiieaggnbfpacmjmidcjdlaiplp - Firefox:
n.gedizaydindogmus@gmail.com
強制安裝
使用你現有的瀏覽器原則管理機制。
- Chrome 與 Edge:透過 Group Policy 或 Intune 將擴充功能 ID 加入
ExtensionInstallForcelist。 - Firefox:在
policies.json中使用ExtensionSettings原則(或你的管理機制對應做法),搭配上方的 Firefox 附加元件 ID。
權限,以及每項權限為何必要
這些是擴充功能所要求的權限,取自已發布的資訊清單。每一項都在使用者自己的裝置上、以已登入的使用者身分執行。
- scripting:匯出時將一小段輔助程式注入作用中的 Teams 分頁,以擷取內容指令碼無法觸及的內嵌影像(Cookie 已分割隔離至 Teams 的影像主機)。不會載入任何外部程式碼。
- activeTab:匯出時讀取作用中的 Teams 分頁,以呼叫 Teams 自家的訊息 API,僅在該 API 無法使用時才退而使用 DOM。不讀取其他分頁,也不在背景讀取。
- downloads、downloads.open:當使用者按下「匯出」時,透過瀏覽器的「另存新檔」對話框儲存匯出內容,並可從彈出視窗記錄中重新開啟已儲存的檔案。僅限擴充功能自己建立的下載 ID。
- storage:在本機儲存匯出偏好設定(格式、語言、納入的區段、日期篩選)。只由彈出視窗讀取,絕不傳送到裝置以外。
- offscreen(僅 Chrome 與 Edge):一份隱藏的離畫面文件用於將表情符號點陣化以產生 PDF 輸出,並產生用來儲存大型檔案的 blob URL,兩者皆完全在裝置上進行。Firefox 不使用它。
主機存取
擴充功能只連線到 Microsoft 主機,而且只連線匯出所需的那些。資訊清單列出每個 Teams 變體加上少數幾個 Microsoft 媒體主機,讓工具能跨各種租用戶類型運作。單次執行只會與使用者已登入的那個租用戶(作用中分頁)的單一 Teams 來源通訊,並且只為某段對話實際包含的項目連線媒體主機。
- Teams 網頁來源:
teams.microsoft.com、teams.cloud.microsoft、teams.live.com、teams.microsoft.us(GCC High),加上.mcas.ms代理以及主權雲(.us、.cn)變體。每次執行只使用已登入租用戶的來源。 graph.microsoft.com(政府為.us):解析參與者的顯示名稱,且僅在使用者開啟「包含大頭貼」(預設關閉)時才取得他們的個人大頭照。*.asm.skype.com:個人 Teams Free 帳號上貼進訊息的內嵌影像,僅在訊息含有這類影像時。*.sharepoint.com/.us:透過迴紋針附加的影像檔案,下載僅為了讓圖片出現在匯出內容中。其他檔案類型則保留為連結,不會下載。- 選用的
<all_urls>:預設關閉。僅在使用者啟用「設定」中的「影像擷取備援」切換時才於執行階段要求,該功能會在 Teams 影像代理無法連線時還原連結預覽縮圖。
資料處理
沒有任何資料送往第三方或開發者的伺服器。訊息及其媒體使用使用者現有的工作階段,從 Microsoft 自家服務讀取,在裝置上格式化,再透過瀏覽器的「另存新檔」對話框儲存,由使用者選擇資料夾與檔名。沒有代理伺服器、沒有雲端環節,擴充功能中也沒有任何形式的分析或遙測。它以已登入的使用者身分執行,使用該使用者已具備的存取權。
原始碼與授權
以 MIT 授權開放原始碼。閱讀程式碼或自行建置: github.com/gediz/teams-web-chat-exporter。發行歷史記錄於 變更記錄.