gamexg
V2EX  ›  问与答

请问, macos 的软件签名机制是什么?未经过发者账号签名的 electron 程序可以无警告提示的运行?

  •  
  •   gamexg · Feb 26, 2023 · 1212 views
    This topic created in 1226 days ago, the information mentioned may be changed or developed.

    为了一个需求,用 electron + golang 写了个程序跨平台,目前没使用开发者账号签名。 神奇的可以在多个 macos 下正常运行,没有弹出警告等提示。

    这正常吗? 我不是 mac 开发,印象 macos 要求软件必须经过开发者账号签名外加苹果公正,但是这次却发现不经过公正的也能正常运行,觉得很奇怪。 请问这是什么原因? 另外是否所有程序都必须签名?自动升级时使用的辅助程序等临时程序也需要签名吗?使用安装包签名方式? 哪里有比较底层的介绍?

    2 replies    2023-02-27 03:03:49 +08:00
    gamexg
        1
    gamexg  
    OP
       Feb 26, 2023
    对了,测试的 macos 版本是 arm 的 13.2 、amd64 的 12.6
    ysc3839
        2
    ysc3839  
       Feb 27, 2023 via Android
    你怎么弄到别的机子上的?浏览器下载?签名是肯定要签的,不签名不能运行,但可以自签名,不过需要去设置允许未知来源。自签名后如果是浏览器下载会加个 quarantine 属性,然后你直接运行就会弹窗提示来自未知开发者。此时可以右键打开然后确定,印象中这一步会去掉 quarantine ,但我也不是很确定,后续再运行就不会提示了。
    如果不是浏览器下载的,就不会有 quarantine ,自然不会有提示。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   972 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 21:12 · PVG 05:12 · LAX 14:12 · JFK 17:12
    ♥ Do have faith in what you're doing.