如果你透過 Microsoft Store 發佈應用程式為 MSIX 套件,程式碼簽署是免費且自動處理的——Microsoft在認證後重新簽署套件,無需購買或管理憑證。 如果你透過商店以 MSI/EXE 安裝 程式發佈,你有責任在提交安裝程式前為 Authenticode 簽署。 本文其他內容適用於分布在Microsoft Store之外的應用程式。
一覽比較
| Option | Cost | 可用性 | 智慧螢幕行為 | 商店合格資格 | 最適合用於 |
|---|---|---|---|---|---|
| Microsoft Store (MSIX) — 商店重新簽收你的包裹 | 免費 | 全球 | ✅ 沒有警告 | ✅ 是 | 推薦給大多數新應用程式 |
| Microsoft Store(MSI/EXE 安裝程式) — 出版者必須簽署 | 必須將憑證鏈接到 受信任根程式 CA(即 Trusted Root Program CA),(根據 CA 而有所不同) | 全球 | ✅ 商店安裝時沒有 SmartScreen 提示(UAC 可能仍然會出現) | ✅ 是 | 現有的 Win32 應用程式是透過 MSI/EXE 安裝程式的路徑來提交的 |
| Azure Artifact Signing(前稱 Trusted Signing) | ~$9.99/月 | 組織:美國、加拿大、歐盟、英國。 個人:僅限美國和加拿大 | ⚠️ 聲望會隨時間累積;預期會有初步警告 | ❌ 否 | 建議不通過商店發行 |
| OV 證書 (來自 CA,如 DigiCert、Sectigo) | 每年150至300美元 | 全球 | ❌ 否 | 無法使用 Azure Artifact Signing,或偏好傳統 CA 的開發者 | |
| 電動車證書 | 每年400+美元 | 全球 | ⚠️ 自 2024 年起和 OV 一樣——不再是即時繞過 | ❌ 否 | 不再推薦用於繞過 SmartScreen |
| 自我簽署憑證 | 免費 | — | ❌ 阻止公共使用者安裝 | ❌ 否 | 僅限開發/測試,或是企業級的管理憑證信任 |
| 沒有簽名 | 免費 | — | ❌ 強力的SmartScreen攔截功能,企業可能會全面封鎖 | ❌ 否 | 不建議公開發行 |
Microsoft Store — MSIX 提交:無需簽名
大多數Windows應用程式推薦透過 Microsoft Store 發佈 MSIX 套件。 Microsoft 會自動重新簽發你的套件,讓使用者永遠不會看到 SmartScreen 警告,也不需要購買或續訂憑證。
備註
如果你是提交 Win32 MSI 或 EXE 安裝程式到 Store(而非 MSIX 套件),Microsoft 不會重新簽發安裝程式。 安裝程式及其 PE 檔案必須以憑證簽署,該憑證需鏈結至 Microsoft 受信任根目錄計畫 — 不接受自簽憑證。 請參閱 MSI/EXE 的應用程式套件要求。
在 storedeveloper.microsoft.com 建立免費開發者帳號。 註冊後,請使用 合作夥伴中心 提交應用程式並管理其清單。
Azure Artifact Signing(前稱 Trusted Signing)— 推薦用於非 Store 發佈
Azure Artifact Signing(前稱 Trusted Signing) 是 Microsoft 推薦給在商店外發佈應用程式的開發者使用的程式碼簽署服務。
重點細節:
- 費用: 每月約 $9.99,遠低於傳統 OV 或電動車證書
- 身份驗證: Microsoft 在簽發證書前驗證您的組織或個人身份;請預定幾個工作天進行驗證
- 無需硬體令牌: 簽約可直接整合 CI/CD 管線(GitHub Actions、Azure DevOps 等)——不需要實體 USB 令牌
- SmartScreen 行為: 與 OV 證書相同的聲譽建立模式——新檔案會顯示 SmartScreen 警告,直到累積足夠的下載歷史。 Azure Artifact Signing 不提供即時的 SmartScreen 信任。
這很重要
地理限制: Azure 工件簽名服務適用於美國、加拿大、歐盟及英國的組織。 目前個別開發者僅限於美國和加拿大。 如果你是這些地區以外的個人開發者,請參考下方的 OV 證書 。
Azure Artifacts 簽署檔案
→ 使用 SignTool 簽署 MSIX 套件
OV 證書 — 傳統 CA 選項
來自 DigiCert、Sectigo 或 GlobalSign 等憑證授權機構(CA)的組織驗證(OV)憑證,是成熟的程式碼簽署選項。 他們是合適的選擇,當滿足下列條件時:
- 您位於美國、加拿大、歐盟或英國以外的組織;或在美國或加拿大以外的地區(個別開發者)且無法使用 Azure Artifact Signing
- 你的組織已經和特定的 CA 有合作關係
- 你的企業客戶需要特定 CA 的憑證
重點細節:
- 費用: 每年的費用通常為150至300美元,取決於證書頒發機構和證書等級。
- 身份驗證: CA在簽發證書前會驗證貴組織的法律身份;預留幾個工作天
- HSM 要求: 截至 2023 年 6 月,CA/瀏覽器論壇要求 OV 憑證的私鑰必須儲存在硬體安全模組(HSM)或硬體憑證中。 大多數 CA 提供相容的 USB 令牌或雲端 HSM 選項。
- SmartScreen 行為: 等同於 Azure Artifact Signing:聲譽會隨著時間根據檔案雜湊而累積。 期待會收到 SmartScreen 的新檔案提示。
OV 憑證是一個經過驗證的選項,功能上等同於 SmartScreen 的 Azure Artifact Signing。 如果你在美國或加拿大(或歐盟或英國的組織),Azure Artifact Signing 通常更具成本效益,且能更順暢地整合自動化建置流程。
電動車證照——不再建議用於 SmartScreen
延長驗證(EV)憑證過去在首次下載時完全繞過 SmartScreen,這使其成為無聲譽新應用的首選。 這種行為在2024年被移除了。 EV 簽名檔案現在會經歷與 OV 證書相同的聲譽建立過程。
這代表什麼:
- 如果你已經有電動車證照,它仍然有效且能用於簽署——請持續使用直到證照過期
- 電動車證書仍需更嚴格的身份驗證,這對企業採購或其他信任情境可能有影響
- 僅為了避免 SmartScreen 警示而支付電動車保費(每年 $400+)已 不再合理 ——你仍會看到與 OV 證書相同的警示
SmartScreen 聲譽供開發者參考,了解聲譽如何建立以及使用者的觀感
自簽憑證 — 僅限開發與測試
自我簽署憑證在 Windows 上預設不受信任,任何未手動將該憑證安裝為受信任根憑證的使用者,都會觸發 SmartScreen 的強效封鎖。 這使得自簽憑證不適合公開分發。
適當用途:
- 本地開發與測試 ——你可以控制機器並手動安裝憑證
- 企業內部發行 — 您的 IT 部門可以透過 Intune 或群組政策,將憑證部署為受信任的根,讓受管理裝置能靜默安裝應用程式
開源:SignPath 基金會
如果您的專案是開放原始碼,SignPath Foundation 提供免費的程式碼簽署服務,適用於符合資格的開源專案。 該計畫透過受管理的流程提供 OV 層級的證書簽署。 請查看 SignPath 基金會網站以了解資格要求及申請流程。