本文將回答關於 Microsoft 資訊保護(MIP)SDK 的常見問題。 關於已知問題與錯誤訊息,請參見 MIP SDK 故障排除。
一般
MIP SDK 支援多少標籤?
MIP SDK 支援最多 500 個加密敏感標籤。 不使用加密的標籤不受此限制。 擁有大量敏感標籤的租戶可能會受到一定的效能影響。 欲了解更多資訊,請參閱 敏感度標籤限制。
MIP SDK 是否支援用分類標籤重新標記 .pfile 類型?
否,這是根據設計,因為 pfiles 是受保護的文件類型。 在分類前,請使用 Microsoft Purview 資訊保護 檔案標籤器解密。
為什麼從 Microsoft Teams 下載的受保護檔案會無法解密?
這是 MIP SDK 不支援版本中的已知問題。 升級至最新版的 MIP SDK。
當多個不同租戶的標籤套用到一個檔案時,我該如何檢查所套用的標籤?
針對每個租戶,以該使用者的內容查詢 GetLabel 方法。
元資料儲存變更
其他格式會受到影響嗎,比如 PDF?
Microsoft 宣布更改 Office 檔案(Word、Excel 和 PowerPoint)的標籤元資料儲存位置,以支援 Office 365、SharePoint Online 及其他服務的新功能。 其他檔案格式不會受影響,只有 Office 檔案受影響,特別是 Word、Excel 和 PowerPoint 檔案。
有沒有特定的 MIP SDK 版本是必須的?
MIP SDK 1.7 和更新版本完全相容。
有沒有特定版本的 Office 用戶端必須使用這個儲存位置?
2021 年 9 月之後發行的所有 Microsoft 365 Apps 用戶端都支援這個新的元數據位置。 新的儲存位置要等到租用戶系統管理員啟用受保護共同撰寫功能之後才會使用。
現有的元資料是否會以自訂屬性的形式儲存在 *custom.xml* 中保持最新?
No. 第一次在啟用新的儲存位置之後儲存檔時,標籤數據會移至新位置。 透過 LabelingOptions.ExtendedProperties 寫入的元數據會保留在custom.xml中。
有可能在沒有 MIP SDK 的情況下讀取標籤的元資料嗎?
是的,但你必須實作自己的程式碼來解析檔案並提取資訊。
目前,從檔案中提取鍵值對字串來「讀取」標籤很簡單。 元數據仍然可以以這種方式讀取嗎?
是,Office 檔案 XML 中仍然可以讀取元數據。 您的應用程式必須從原則檔案讀取共同撰寫設定,才能知道已啟用新功能集。 此設定定義了標籤資料的讀寫位置(custom.xml 與 labelinfo.xml)。 請參閱 MS-OFFCRYPTO:LabelInfo 與 Custom Document Properties 的實 作細節。
我要怎麼判斷標籤政策中是否啟用了共同作者?
共著設定的狀態會從政策引擎中的金鑰值 enableLabelCoauth 回傳。 應用程式可以從原則引擎讀取原始位元組,以判斷共同撰寫狀態。
唱片公司是如何遷移到新地點的?
下列邏輯可用來判斷讀取哪個區段,以及用來讀取或寫入標籤數據。
| Action | 功能未啟用 | 功能已啟用 |
|---|---|---|
| 讀取 | 標籤位於 custom.xml(未受保護)或 Doc SummaryInfo(受保護)。 | 如果 labelinfo.xml中存在一個標籤,那就是有效的標籤。 如果 labelinfo.xml中沒有標籤, custom.xml 或 Doc SummaryInfo 中的標籤就是有效的標籤。 |
| 寫入 | 所有新標籤都會寫入 custom.xml (未受保護)或 Doc SummaryInfo(受保護)。 | 所有新標籤都寫成 labelinfo.xml。 |
檔案解析
我可以用 File SDK 寫入我目前正在讀取的同一個檔案嗎?
MIP SDK 不支援同時讀取和寫入相同的檔案。 任何已標記的檔案都會生成 輸入檔的複本 並套用標籤動作。 您的應用程式必須以加上標籤的檔案取代原始檔案。
SDK 字串處理
SDK 是如何處理字串的?我在程式碼中應該使用哪種字串類型?
SDK 旨在用於跨平臺,並使用 UTF-8(Unicode 轉換格式 - 8 位) 來處理字串。 特定指引取決於您所使用的平臺:
| 平台 | 指引 |
|---|---|
| Windows 原生 | 對於 C++ SDK 用戶端,C++標準連結庫類型 std::string 用於將字串傳遞至 API 函式或從 API 函式傳遞。 MIP SDK 會在內部管理 UTF-8 的轉換。
std::string從 API 傳回 時,您必須預期使用 UTF-8 編碼,並在轉換字串時據以管理。 在某些情況下,字串會作為向量(例如發佈授權(PL))的一部分傳回,但應該視為不透明的 Blob。如需詳細資訊與範例,請參閱:
|
| .NET | 針對 .NET SDK 用戶端,所有字串都會使用預設的UTF-16編碼,而且不需要特殊轉換。 MIP SDK 會在內部管理 UTF-16 的轉換。 |
| 其他平台 | MIP SDK 支援的其他所有平臺都有UTF-8的原生支援。 |
內容標記
MIP SDK 支援內容標記嗎?
MIP SDK 不支援在任何檔案上直接套用內容標記,包括頁首、頁尾或浮浮水印。 將標籤數據寫入檔案時,檔案 SDK 會 寫入 contentBits 元數據屬性,以指出已套用保護(如果已設定)。 它不會寫入指出已套用頁首、頁尾或浮水印的屬性。 在應用程式中開啟檔案時,應用程式應評估內容標記設定,並在儲存時寫入檔案。
Android 上的保護和政策 SDK
我應該用哪個共享函式庫來將 MIP SDK 整合進我的 Android 應用程式?
MIP SDK 的 Android 二進位檔包括 libmip_core.so、 libmip_protection_sdk.so、 libmip_upe_sdk.so、 libmip_unified.so和 。
libmip_unified.so 是推薦的函式庫,包含核心函式庫、保護函式庫及政策共享函式庫。
Compliance
Microsoft 資訊保護 SDK 聯邦資訊處理標準(FIPS)140-2 是否符合規定?
請參閱 FIPS 140-2 驗證。
節流
使用 MIP SDK 時,有沒有基於服務的限速限制?
供 Protection SDK 或 File SDK 中保護作業使用的 Rights Management Service,對整個組織每 10 秒的要求上限為 7,500 次。 如果同一組織內的應用程式 A 每 10 秒產生 4,000 個請求,且應用程式 B 每 10 秒產生 4,000 個請求,兩個應用程式可能開始接收 HTTP 429 Too Many Requests 回應。 收到這些例外狀況時,開發人員必須實作退避機制。 未來的 MIP SDK 版本將在內部實作這段回退時間。