【问题标题】:ClickOnce: Unknown Publisher shown in the Installer, when the app is already signedClickOnce:安装程序中显示的未知发布者,当应用程序已经签名时
【发布时间】:2016-01-14 20:56:49
【问题描述】:

我在 Visual Studio 上使用 ClickOnce 发布了一个基本的未签名 Windows 窗体应用程序。我将 .exe 文件和 .exe.config 文件移到我桌面上的文件夹中。我使用合法的 digiCert 签名工具对 .exe 文件进行了签名,并使用 MageUI 创建了应用程序清单和部署清单,并使用相同的签名工具对其进行了签名。我将所有文件移动到我希望用户从中下载的 FTP 服务器。当我在浏览器中输入 URL 时,一切正常,但它提示我安装,它说发布者是未知的。单击安装后,该应用程序将正常运行。

另外,我已经将我的证书添加到受信任的发布者存储中,并验证我的证书的颁发者在中间证书颁发机构存储中,并且他们的颁发者在根证书颁发机构存储中。

我还使用记事本打开了部署和应用程序清单,可以在上面看到我的签名,我可以看到我的 .exe 文件是通过右键单击它并选择属性,然后选择签名选项卡来签名的。

我已按照本网站中列出的步骤进行操作:https://robindotnet.wordpress.com/2013/02/24/windows-8-and-clickonce-the-definitive-answer-2/

我使用了:“#1:在发布后签署应用程序可执行文件。”脚步。

所以我的主要问题是为什么当我下载并运行 .application 文件时它说发布者是未知的?

注意:SmartScreen 过滤器不会因为我的应用不安全而选择我的应用

【问题讨论】:

    标签: deployment clickonce mage publisher


    【解决方案1】:

    我(很遗憾)有同样的问题。

    自 2016 年 1 月 1 日起,Microsoft 不再接受 SHA-1 证书: Windows Enforcement of Autheticode:

    代码签名证书:Windows 将不再信任使用 SHA-1 代码签名证书签名且时间戳记在 2016 年 1 月 1 日之后的带有 Web 标记属性的文件。除了向打算仅为 Windows Vista、Windows Server 2008 开发应用程序的开发人员颁发证书外,CA 不得在 2016 年 1 月 1 日之后颁发新的 SHA-1 代码签名证书。

    我尝试使用 SHA256 哈希和 SHA2 时间戳证书进行签名,但这还不够。我无法理解的是,为什么未签名的 exe 会像智能屏幕中已签名的 SHA1 exe 一样受到威胁!

    【讨论】:

      【解决方案2】:

      另一个答案告诉你发生了什么,这对我有用。我为我的 CI 管道转移了另一个人的工作,但该脚本可以以任何身份使用:

      https://github.com/erikest/SignClickOnce

      【讨论】:

      • 当您检查 VS 项目属性时,您是否验证了发布者是否正确反映:Publish-Options-Description-Publisher name。我记得之前曾为类似问题更改过此值...
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-16
      相关资源
      最近更新 更多