我创建了一个使用 Electron 捕获时间和鼠标/键盘事件的应用程序。它在 Windows 上运行良好。但是,它在 Mac 操作系统上被阻止(请参阅下面的提示)。
因此,Mac 用户将无法使用我们的应用程序 - 除非他们通过转到设置 > 安全和隐私来启用它。这不是一个良好的用户体验,因为理想情况下,我们希望他们能够在安装后使用我们的应用程序(就像其他应用程序的行为方式一样)
我读到这对于跟踪鼠标和键盘事件的应用程序来说很常见,因为它类似于键盘记录器。澄清一下,我们没有创建键盘记录器,而是创建了像 Hubstaff.com 这样的时间跟踪软件
有没有办法绕过安全和隐私步骤,以便他们可以在安装后立即使用该应用程序?
顺便说一句,我们有一个尚未测试的选项: - 通过 EV 代码签名证书验证应用程序,如 https://www.instantssl.com/extended-validation-code-signing-certificate.html
如果您能帮助我们找到正确的方向,我们将非常高兴。
最佳答案
Is there a way to bypass the securty & privacy step so they can use the app immediately after installing?
没有。使用辅助功能的应用程序会给用户带来安全风险;操作系统将始终要求用户明确批准它们。
您将需要寻找不使用辅助功能的替代方法来收集这些数据。我相信the IOHID HIDIdleTime
property可能属于这一类;您可能需要编写一个自定义 Electron 插件才能使用它。
By the way, we have one option that we haven't tested yet: -Get the app verified through the EV code signing certificate…
这行不通。 Apple 仅认可通过 Apple Developer ID 计划颁发的开发者证书。 macOS 不支持由其他 CA(例如 InstantSSL)颁发的代码签名证书 - 使用此类证书签名的应用程序将显示“无法打开,因为它来自身份不明的开发人员”错误,就像未签名一样。
关于node.js - 我们的时间追踪器如何绕过 MacOS 辅助功能设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49769366/