我知道钥匙圈周围有很多重复的东西,但是我做了研究,我认为我的问题是独一无二的:
是否有可能
1)在自动登录启动时锁定屏幕(为了保持安全,但让舒适的自动登录在您去喝咖啡时启动桌面)
2)然后,当您到达计算机时,您使用密码解锁屏幕保护程序,同时(通过此过程)密钥环也被解锁?(以避免您必须连续输入两次密码,一次用于屏幕保护程序,一次用于密钥环)
这种方法的好处是,Alice 可以享受自动启动,而不会牺牲太多的安全性(即没有解锁的自动登录),并避免她多次输入密码(通过结合屏幕和密钥环解锁 - 我认为这是一种安全方面不错的方法)。从用户的角度来看,它实际上就像一个传统的启动和登录过程,只是一旦你输入密码,你的系统就完全准备好了(在单用户系统和无人值守启动的条件下 - 我认为这对于笔记本电脑用户来说并不罕见)。
目前查到的信息:
广告 1): 我发现这集思广益,但在将他的代码添加到 .profile 时,我的屏幕保护程序解锁提示只是无休止地闪烁,所以这可能是一个过时的过程。还有其他选项或更正链接的选项吗?
[编辑]:好的,这部分通过添加gnome-screensaver-command -al
到启动应用程序起作用了。遗憾的是,解锁时会出现密钥环解锁对话框,因此 #2 仍未解决。
广告 2):我找不到任何关于这是否可能的提示。
[edit2]:目前似乎没有办法做到这一点,除非禁用密钥环密码。
答案1
使用不安全的密钥环
您可以gnome-screensaver-command -a
在启动应用程序中添加:
1) Alt+F2然后粘贴gnome-session-properties
并点击Enter
2)单击“添加”并粘贴上面的命令。
问候。
带有安全钥匙圈
(如果你不想清空你的密钥环密码)
完成上述步骤后,您将编写一个脚本,该脚本将在启动时运行并检查屏幕是否被锁定。 如果屏幕已解锁,它将运行一个 Python 脚本来解锁密钥环。
制作这个 perl 脚本并将其放在“启动应用程序”中运行
/usr/bin/perl 的 #! 我的$cmd = "dbus-monitor --session \"type='signal',interface='org.gnome.ScreenSaver',member='ActiveChanged'\""; 打开(IN,“$cmd |”); 尽管 () { 如果 (m/^\s+boolean false/) { exec('/usr/bin/unlock-keyring'); } }
制作这个 Python 脚本,使其可执行,并将其移动到/usr/bin/unlock-keyring
#!/usr/bin/env python 导入 gnomekeyring 导入 getpass gnomekeyring.unlock_sync(None,getpass.getpass('密码:你的密码在这里'));
答案2
我认为像这样的简单 bash 脚本
#!/bin/bash
gnome-screensaver-command --lock
添加到您的启动程序列表中就可以了。
希望这可以帮助