我們創建了一個包含兩個不同包的abc.pkg安裝程序;一個def.mpkg(包裝樣式)和一個ghi.pkg(扁平包裝)。安裝程序支持OS版本10.5及以上。 我們對abc.pkg安裝程序進行了數字簽名,並基於Apple's documentation我們模擬了Gatekeeper的行爲。已簽名abc.pkg傳遞spctl控件並且未通過簽名簽名控制。檢查簽名工具失敗的後果?
簽署的abc.pkg經過SPCTL控制:
spctl -a -v --type install abc.pkg
回報:
abc.pkg:accepted
source: Developer ID
了基於前面提到的文檔上意味着看門人會接受我們的包的簽名,但是未通過檢查 - 簽名控制:
./check-signature ~/path_to_the_installer/abc.pkg
回報:
(c) 2014 Apple Inc. All rights reserved.
/path_to_the_installer/abc.pkg: code object is not signed at all
NO
這意味着簽名不符合關守的要求。
我們已經在Mac OS X 10.6和Mac OS X 10.10上測試過abc.pkg安裝程序,並且安裝過程都是成功的。
究竟是什麼意思abc.pkg不符合關守的要求,哪些是檢查簽名工具失敗的後果?
我們不應該看到蘋果的警告:
「abc.pkg」 是從一個身份不明的開發者。你確定要打開 嗎?