当一个应用第一次请求使用摄像头或麦克风时,macOS 会弹出一次提示:允许,或者不允许。点击"允许"后,这个回答就会一直生效——和 Cookie 提示条不一样,这个应用不会再次询问。下面说清楚这次点击到底决定了什么、去哪里可以改回来,以及改动它并不会带来的那一件事。
这次性提示到底决定了什么
Apple 描述了这个决定所依托的控制点:在 macOS 的设置中,用户可以查看已经允许哪些应用访问特定信息,也可以授予或撤销未来的访问权限。实际情况是,你回答一次的那个提示会被记录下来,此后每次这个应用再次尝试时,macOS 都会使用这条记录——除非你自己、应用重新安装,或者一次重置改变了这条记录,否则它不会再问第二次。
去哪里查看,以及如何关闭它
前往"苹果菜单 › 系统设置 › 隐私与安全性 › 摄像头",麦克风也有对应的页面。Apple 自己的说明是:"在列表中为每个应用单独打开或关闭摄像头访问权限"——麦克风同理。曾经请求过权限的每一个应用都会列在其中,各自配有独立的开关,因此你可以只关闭某一个应用的访问权限,而不影响其他应用。
从终端重置它
macOS 还提供了一种通过命令行重置该记录的方式:tccutil。它自己的说明文档写得很直白:它"管理隐私数据库,其中存储着用户就应用是否可以访问个人数据所做出的决定",而它的重置命令会重置这些决定,使应用被重新询问。
tccutil reset Camera com.example.app撤销权限做不到的事:终止一次正在进行的通话
关闭访问权限,或者用 tccutil 重置它,决定的是该应用下一次尝试使用摄像头或麦克风时会发生什么。它并不会介入一个已经在运行的会话:如果某个应用当前已经打开了摄像头或麦克风,改动权限并不是立即结束该会话的可靠方法。退出该应用才是立刻停止一次正在进行的采集的直接方法。
FireAI 的"Stop it"菜单
FireAI 0.1.2 会显示某个应用打开摄像头或麦克风的那一刻,并把同样的三种应对方式集中放在该会话旁边的同一个位置:
- 立即撤销该应用的摄像头或麦克风访问权限,做法与
tccutil相同——下次该应用需要时,macOS 会重新询问。 - 直接退出该应用,这才是真正终止一次已经在进行的采集的方法。
- 用一条随时可撤销的 FireAI 规则阻断该应用的网络访问,这样即便摄像头或麦克风仍处于开启状态,它记录下的任何内容也无法离开这台 Mac。
简而言之
"允许"不是永久的,也不是立即生效的。系统设置和 tccutil 改变的是下一次会发生什么;只有退出应用才能可靠地终止此刻正在发生的事情。FireAI 的"Stop it"菜单把这三种操作,再加上网络这一项,集中放在了同一个地方。
FireAI 和 HisnLabs 在其中扮演的角色
关闭权限,或用 tccutil 重置它,决定的只是下一次会发生什么,并不会触及正在进行中的会话。FireAI 0.1.2 补上了这最后一步:一个"Stop it"菜单,可以取消某个应用的摄像头或麦克风权限、直接退出该应用,或者直接阻断它的网络连接。
FireAI 是 HisnLabs 自己的产品:一款直接在 Mac 上运行的 AI 防火墙。它用通俗易懂的语言显示你的应用建立的每一个连接,并让你决定哪些数据可以离开你的 Mac——它的 AI 在本地运行,因此你的流量永远不会发送给我们或任何其他人。HisnLabs 的安全研究团队负责让这些判断保持准确:归类哪些域名只是普通的遥测、哪些属于真正的服务,追踪连接背后的国家和网络,并用真实的流量模式训练设备端模型(Autopilot 功能)——这一切都不会离开你的 Mac。
你可以阅读它背后的技术决策,或试用 FireAI 17 天:HisnLabs 出品的 FireAI。
