【问题标题】:How to make screensaver accept other credentials?如何让屏幕保护程序接受其他凭据?
【发布时间】:2012-08-07 15:55:46
【问题描述】:

在 Windows XP 下,我看到一些商业软件可以保护带有 USB 设备的计算机。也就是说,屏幕保护程序会像往常一样在一段时间后激活。但要停用,您不仅需要密码,还需要插入 USB 设备。该设备包含证书,必须在停用屏幕保护程序之前进行验证。

我正在寻找用 Python 实现此类功能的方法。我在 Ubuntu 软件中心进行了搜索,发现 BlueProximity 是最接近我的目的但仍然不同的软件。该软件监控某个蓝牙设备,它的存在用于定期模拟用户活动以避免屏幕保护程序的激活。

当然我可以做一个类似的程序,定期检查某个 USB 磁盘的存在并验证其包含的证书,如果一切正常,则将屏幕保护程序作为某些用户活动,否则锁定屏幕。

但这不是立即的。假设有人偷了我的密码来解锁屏幕保护程序,而不是 U 盘,那么他可以解锁屏幕。并且在至少一分钟左右的时间内,屏幕应该再次被锁定。即使我的程序有一个相当短的检查周期——比如 0.1 秒,一个和另一个锁定之间存在从 0.1 秒和缓慢衰减的时间成本(通常接近 1 秒)相加的间隔。

那么有没有更好的解决方案,比如我的程序可以告诉屏幕保护程序拒绝以任何方式解锁的某些 API?

【问题讨论】:

  • 屏幕应该寻找设备而不是锁定,如上所述。但是,一旦它被锁定,如果用户采取了行动,它应该在提示输入密码之前检查设备是否存在。

标签: python gnome screensaver


【解决方案1】:

您可能想看看PAM(可插入身份验证模块)。该解决方案将更通用、更健壮,并且可以应用于任何依赖 PAM 进行身份验证的程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-01
    • 1970-01-01
    • 2020-07-23
    • 2012-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多