數位簽章和外部封包檔案
Windows Installer 可以使用數位簽章來偵測損毀的資源。 安裝外部資源時,屬於資源的簽署者憑證可能會根據套件中撰寫的參考簽署者憑證進行驗證。 安裝程式無法驗證內部封包的簽章。 它只能使用 MsiDigitalSignature 資料表 和 MsiDigitalCertificate 資料表來驗證數位簽章。
Windows Installer 會在安裝儲存在外部封包中的檔案時執行下列動作:
- 安裝程式會檢查該外部封包的媒體專案是否列在 MsiDigitalSignature 資料表中。 儲存在外部封包中的檔案是藉由在 Media 資料表 的 [封包] 資料行中有一個專案,而不是以 '#' 字元開頭來識別。
- 開啟外部封包之前,安裝程式會呼叫 WinVerifyTrust 來擷取目前的憑證和雜湊資訊。 如果封包上的目前簽章資訊與套件中撰寫的簽章資訊不符,則安裝會失敗。 安裝失敗,因為封包可能已遭入侵且無法信任。
如需有關使用數位簽章、數位憑證和 WinVerifyTrust的詳細資訊,請參閱 Microsoft Windows 軟體發展工具組 (SDK) 的安全性 一節。
如需詳細資訊,請參閱 MsiGetFileSignatureInformation、 MsiDigitalCertificate 資料表和 MsiDigitalSignature 資料表。