1. 程式人生 > >Office365客戶端使用RMS功能的分析

Office365客戶端使用RMS功能的分析

今天一朋友突然在微信裡問了這麼一個問題:

本地部署了Exchange+RMS,測試的時候怎麼同一封郵件通過owa的方式就可以正常的應用RMS許可權,而使用Outlook許可權就全部丟失呢?

針對這個問題,我回想起來很久以前我也遇到過這樣一個情況,當時排查了很久最後發現出現這個問題的根本原因是Outlook客戶端使用的是Office365上下載的客戶端。來我們一起看下到底是怎麼回事

首先看下症狀,同一封郵件給的許可權是隻讀,在owa上檢視顯示只讀,回覆和轉發按鈕是灰色的。但是在outlook上檢視這封郵件,雖然顯示許可權是隻讀,但是可以轉發那就說明RMS的許可權丟失了啊。

image

再次檢查下許可權,發現確實除了只讀,其餘任何事情都可以幹

image

那麼接下來我們看下為什麼會出現許可權丟失,直接開啟本地計算機的登錄檔,定位到:Computer\HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\MSIPC

可以清楚的看到Outlook客戶端是從哪裡獲取RMS模板的

image

第一個地址是discover.aadrm.com,這正是Azure RMS的地址啊!也就是說Office365客戶端裡面寫死了RMS模板從Azure RMS獲取。

不過我們點選MSIPC裡面寫的預設地址確是本地部署的RMS伺服器地址,這也就是為什麼Outlook客戶端上,還是會顯示一個只讀許可權的原因了。

image

對此我們還能通過日誌來進行精準定位

開啟日誌路徑為C:\Users\Wang Yuan\AppData\Local\Microsoft\MSIPC\Logs

image

然後赫然看見是從Azure RMS獲取模板,最終導致了Outlook上該郵件的RMS許可權丟失

image

總結一下:也就是說目前只要是使用了Office365下載的客戶端,只要不是使用國際版Azure RMS服務,即使Exchange和RMS全都是純本地部署的Outlook客戶端也只會去讀取Azure RMS模板,這樣一來自然本地的RMS許可權就丟失了。