如何在Mac上打开来自“不明开发者”的应用程序

MacOS有一项名为“GateKeeper”的功能,旨在锁定你的Mac电脑,迫使其默认只能运行苹果认可的软件。但是Mac的锁定方式和Android一样--你仍然可以自由地运行任何你想要的应用程序。

根据您运行的MacOS版本的不同,GateKeeper的工作方式略有不同。老版本让你只需一个简单的开关就可以关闭,而MacOS Sierra则让事情变得稍微复杂一些。这是你需要知道的。

网守如何工作

每当你在Mac上启动一个新的应用程序时,GateKeeper都会检查它是否使用了有效的签名。如果应用程序使用有效签名签名,则允许其运行。如果不是,您将看到一条警告消息,并且您的Mac将阻止该应用程序运行。

但并不是所有的Mac应用都是签约的。网络上的一些应用程序--尤其是较旧的应用程序--就是没有签名,即使它们是值得信赖的。也许它们已经有一段时间没有更新了,也可能是开发人员根本不屑于此。这就是为什么苹果提供了一种绕过GateKeeper的方法。(如果您正在开发自己的应用程序,您可能还想绕过这一点,运行一个未签名的应用程序。)

相关:如何在Mac上安装应用程序:您需要知道的一切

网守知道三种不同类型的应用程序:

来自苹果应用商店的应用程序:你从Mac应用程序商店安装的应用程序被认为是最值得信任的,因为它们已经通过了苹果的审查程序,并由苹果自己托管。它们也被沙箱包围,尽管这也是许多苹果应用程序开发人员不使用Mac App Store的一个原因。 来自已识别的开发者的应用程序:Mac应用程序开发者可以从苹果公司获得唯一的开发者ID,并使用它来签署他们的应用程序。此数字签名确保应用程序实际上是由该特定开发人员创建的。例如,当你在Mac上安装谷歌Chrome时,它会用谷歌的开发者ID签名,这样苹果就可以让它运行了。如果发现开发人员滥用他们的开发人员ID-或者它被黑客用来签署恶意应用程序-那么开发人员ID就可以被撤销。通过这种方式,GateKeeper确保只有由合法开发人员创建的应用程序才能在您的计算机上运行,这些合法开发人员已经经历了获得开发人员ID的麻烦,并且状态良好。 来自其他任何地方的应用程序:不是从Mac应用程序商店获得的应用程序,也不是用开发者ID签名的应用程序属于最后一类。苹果认为这些都是最不安全的,但这并不意味着某个应用程序不值得信任--毕竟,多年未更新的Mac应用程序可能无法正确签名。

默认设置是只允许来自前两个类别的应用程序:Mac App Store和来自已识别的开发者的应用程序。这一设置应该会提供很好的安全性,允许用户从应用程序商店获得应用程序,或者从网络上下载签名的应用程序。

如何打开未签名的应用程序

如果您尝试通过双击打开未签名的应用程序,它将不起作用。您将看到一条“[App name]无法打开,因为它来自身份不明的开发者”的消息。

当然,有时您可能会遇到需要使用的未签名应用程序。如果你信任开发者,你可以告诉你的Mac打开它。

警告:网守软件是一项安全功能,默认开启是有原因的。仅运行您信任的应用程序。

若要打开未签名的应用程序,您需要右键单击或按住Control键单击该应用程序,然后选择“打开”。*这适用于MacOS Sierra以及以前版本的MacOS。

你会被警告,这个应用程序来自一个身份不明的开发者-换句话说,它没有用有效的开发者签名签名。如果您信任该应用程序,请单击“打开”以运行该应用程序。

就这样。您的Mac会记住您允许运行的每个特定应用程序的此设置,下次运行该应用程序时不会再询问您。你只需要在你第一次想要运行一个新的未签名的应用程序时就必须这样做。

这是运行少数未签名应用程序的最好、最安全的方式。只需允许您使用每个特定的应用程序,确保您在运行之前信任每个应用程序。

如何允许随时随地使用应用程序

在旧版本的MacOS中,您可以从系统首选项>安全和隐私中完全禁用GateKeeper。您只需从“允许从以下位置下载应用程序”设置中选择“任何位置”即可。

不过,在MacOS 10.12 Sierra中,苹果改变了这一点。您不能再从系统首选项窗口完全禁用网守。就是这样--删除了一个单一的图形选项。你仍然可以选择运行单独的未签名应用程序,并且有一个隐藏的命令行选项可以完全绕过GateKeeper。但苹果不希望知识较少的用户禁用这一安全功能,所以它隐藏了那个开关,就像禁用系统完整性保护的选项一样。

相关:如何在Mac上禁用系统完整性保护(以及为什么不应该禁用)

如果您知道自己在做什么并且需要更改设置,您可以这样做,尽管我们不推荐这样做。

首先,打开终端窗口。按Command+空格键,键入“Terminal”,然后按Enter键启动一个。或者,您可以打开Finder窗口并转到应用程序>实用程序>终端。

在终端窗口中运行以下命令并提供您的密码:

sudo spctl --master-disable

完成后,请转到系统首选项>安全和隐私。您会发现旧的“Anywhere”选项已经返回并启用。

如果您选择了“Anywhere”设置,您的Mac现在将像以前一样运行,并且未签名的应用程序将运行起来,没有任何问题。

要撤消此更改,只需在安全和隐私窗格中选择“App Store and Identified Developers”或“App Store”即可。

苹果试图通过对知识较少的用户隐藏这一选项,使MacOS更加安全。如果您需要运行未签名的应用程序,我们鼓励您只允许它们逐个运行,而不是禁用网守,让所有未签名的应用程序都可以运行。它几乎同样简单,并且确保您的计算机上运行的任何东西都不是您自己批准的。

相关文章