KeePass
密码管理器




Package

为什么在子对话框打开时KeePass没有锁定?


KeePass有多种选项可以自动锁定其工作区(在一段时间不活动之后,当计算机被锁定或用户被切换,计算机被暂停时等)。但是,在打开子对话框(如“编辑条目”对话框)时,工作区不会自动锁定。

要理解为什么这种行为有意义,首先要知道工作空间被锁定时会发生什么。锁定时,KeePass完全关闭数据库并仅记住多个视图参数,例如最后选择的组,顶部可见条目,所选条目等。从安全角度来看,这可以实现最佳安全性:打破锁定的工作区是等于打破数据库本身。

现在回到原来的问题。让我们假设一个子对话框是打开的,其中一个事件应该自动锁定工作区。KeePass现在应该做些什么?在这种情况下,KeePass无法询问用户该做什么,并且必须自动做出决定。有几种可能性:

  • 不要保存数据库并锁定。
    在这种情况下,数据库的所有未保存数据都将丢失。这不仅适用于在当前对话框中输入的数据,还适用于先前已修改的所有其他条目和组。
  • 保存数据库并锁定。
    在这种情况下,可能会保存不需要的更改。通常你打开文件,尝试一些东西,记住你只需关闭文件而不保存更改。KeePass有一个选项’当KeePass关闭或工作区被锁定时自动保存数据库’。如果启用此选项并且没有打开子对话框,则清楚该怎么做:尝试保存数据库,如果成功:锁定工作区。但是如何处理子对话框中未保存的更改?是否应该自动保存,取消按下“取消”按钮的可能性?
  • 保存到临时文件并锁定。
    乍一看,这似乎是最好的选择,但也存在一些问题。首先,保存到临时文件可能会失败(例如,可用磁盘空间太少,或者像病毒扫描程序这样的其他程序可能会阻止它)。其次,从安全的角度来看,保存到临时文件并不是不重要的。当必须选择位置时,通常选择用户在硬盘上的临时目录(因为它可能具有足够的可用空间,所需的访问权限等)。KeePass数据库可以在那里泄露和积累。目前尚不清楚当计算机被锁定或在锁定时崩溃时应该发生什么。下次打开数据库时,应该使用存储在临时目录中的数据库吗?如果’真实’会发生什么

显然,这些替代方案都不令人满意。因此,KeePass实现了以下简单易懂的行为:

子对话框打开时,KeePass不会锁定。

这个简单的概念避免了上述问题。用户负责程序的状态。

请注意,打开子对话框通常只需要 编辑内容 ; 使用 条目不需要它,因为主窗口为此提供了 各种方法

Windows锁定时锁定。 在Windows XP及更早版本中, 应启用Windows服务“终端服务”。如果禁用此服务,则在Windows锁定时锁定KeePass可能不起作用。较新的操作系统不需要此服务。

上一页:
下一页:


沪ICP备19023926号-2 Copyright © 2003-2019 Dominik Reichl, [联系我们 / 版本说明] [团队 & 隐私政策]