V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
gamexg
V2EX  ›  问与答

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

  •  
  •   gamexg · 2023-02-26 22:17:50 +08:00 · 725 次点击
    这是一个创建于 642 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

    2 条回复    2023-02-27 03:03:49 +08:00
    gamexg
        1
    gamexg  
    OP
       2023-02-26 23:10:16 +08:00
    对了,测试的 macos 版本是 arm 的 13.2 、amd64 的 12.6
    ysc3839
        2
    ysc3839  
       2023-02-27 03:03:49 +08:00 via Android
    你怎么弄到别的机子上的?浏览器下载?签名是肯定要签的,不签名不能运行,但可以自签名,不过需要去设置允许未知来源。自签名后如果是浏览器下载会加个 quarantine 属性,然后你直接运行就会弹窗提示来自未知开发者。此时可以右键打开然后确定,印象中这一步会去掉 quarantine ,但我也不是很确定,后续再运行就不会提示了。
    如果不是浏览器下载的,就不会有 quarantine ,自然不会有提示。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2823 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 03:51 · PVG 11:51 · LAX 19:51 · JFK 22:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.