【发布时间】:2012-08-07 15:55:46
【问题描述】:
在 Windows XP 下,我看到一些商业软件可以保护带有 USB 设备的计算机。也就是说,屏幕保护程序会像往常一样在一段时间后激活。但要停用,您不仅需要密码,还需要插入 USB 设备。该设备包含证书,必须在停用屏幕保护程序之前进行验证。
我正在寻找用 Python 实现此类功能的方法。我在 Ubuntu 软件中心进行了搜索,发现 BlueProximity 是最接近我的目的但仍然不同的软件。该软件监控某个蓝牙设备,它的存在用于定期模拟用户活动以避免屏幕保护程序的激活。
当然我可以做一个类似的程序,定期检查某个 USB 磁盘的存在并验证其包含的证书,如果一切正常,则将屏幕保护程序作为某些用户活动,否则锁定屏幕。
但这不是立即的。假设有人偷了我的密码来解锁屏幕保护程序,而不是 U 盘,那么他可以解锁屏幕。并且在至少一分钟左右的时间内,屏幕应该再次被锁定。即使我的程序有一个相当短的检查周期——比如 0.1 秒,一个和另一个锁定之间存在从 0.1 秒和缓慢衰减的时间成本(通常接近 1 秒)相加的间隔。
那么有没有更好的解决方案,比如我的程序可以告诉屏幕保护程序拒绝以任何方式解锁的某些 API?
【问题讨论】:
-
屏幕应该寻找设备而不是锁定,如上所述。但是,一旦它被锁定,如果用户采取了行动,它应该在提示输入密码之前检查设备是否存在。
标签: python gnome screensaver