为了账号安全,请及时绑定邮箱和手机立即绑定

OSX:代码签名可执行文件以避免防火墙警告对话框

OSX:代码签名可执行文件以避免防火墙警告对话框

Go
陪伴而非守候 2021-12-20 10:10:27
OSX El Capitan 和 Go 1.6我想要的比标题中听起来更简单。OSX 防火墙禁止任何未知应用程序接受连接。当任何这样的程序启动时,用户会看到一个对话框,是否应该允许所述可执行文件接收连接。然后记住用户的选择。例如,当使用节点开发实际可执行文件是单个二进制文件并且用户只需要允许/拒绝它一次时,上述工作正常。在 Go(和任何其他编译语言)中开发时,创建的可执行文件每次都不同。这意味着我每次启动服务器时都会收到对话框。避免此对话框的一种方法是使用 OSX 本身生成的自签名证书对可执行文件进行签名。获得证书后,我们只需签署可执行文件并允许/拒绝它一次。即使可执行二进制文件发生更改,代码签名也会始终被记住。所以,我的问题是:有没有办法go在运行编译后的二进制文件之前运行签名命令?
查看完整描述

2 回答

?
Helenr

TA贡献1780条经验 获得超4个赞

更简单:在本地主机上显式启动服务器,例如:

http.ListenAndServe("localhost:8080", nil)

我最近写了一篇关于这个的小文章:

抑制接受传入网络连接警告 osx


查看完整回答
反对 回复 2021-12-20
?
慕神8447489

TA贡献1780条经验 获得超1个赞

傻我。我花了 5 分钟来写问题,花了 2 分钟找到答案并编写解决问题的脚本。我会把它贴在这里以防有人遇到同样的问题。


binary=$GOPATH/pkg/kliron/hiss/hiss.a   

go build -o $binary hiss/main.go

codesign -f -s klironCode $binary --deep   

$binary "$@"

只需使用go build.


查看完整回答
反对 回复 2021-12-20
  • 2 回答
  • 0 关注
  • 188 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号