【问题标题】:Python Keyring ,how to pass master passwordPython Keyring,如何传递主密码
【发布时间】:2017-06-14 17:57:40
【问题描述】:

有没有办法自动/以编程方式传递主密码。根据下面的代码,我们必须手动输入密码,我们可以避免这种情况

import keyring 
keyring.set_password('testuser','testuser','testpassword')

test = keyring.get_password('testuser', 'testuser')
print(test)

【问题讨论】:

  • 自动是什么意思?能具体说一下吗
  • 你好,如果我们使用密钥环,我们必须输入主密码才能检索排序密码,请参阅提示。 # python test12344 Please enter password for encrypted keyring:
  • 实现此目的的任何选项

标签: python python-keyring


【解决方案1】:

如果这是您的个人计算机,那么我建议您将主密码存储在安全位置,例如 /etc。 对于 linux,您可以创建一个类似 /etc/master_passwd.txt 的文件并在其中存储密码(使用 sudo 运行以下命令)。

$ touch /etc/master_passwd.txt > your_password_here

然后在您的 python 脚本中,您可以通过以下方式获取主密码:

with open('/etc/master_passwd.txt', 'r') as passwd_file:
    master_password = passwd_file.read()

【讨论】:

  • 在配置文件中添加密码不是安全或建议的方式。为了避免这种做法,我们只尝试使用密码库。我正在尝试寻找一种无人值守的方式来获取运行脚本的密码
  • 您必须将其存储在某个地方。我建议您使用任何加密算法来加密密码,将其存储在配置文件中。当你需要它时,你可以再次解密并使用它。
  • 您将主密码存储在像 /etc 这样的安全位置,因为只有 root 可以访问这些文件,所以我认为它是安全的
  • 感谢您的回复。我正在尝试创建一个 UI 来执行多个自动化脚本,这些脚本是必需的设备登录凭据,并且登录凭据存储在密钥中。我们可以通过 UI 输入主密码。但我想知道如何将主密码作为变量传递
  • 您必须以一种或另一种方式将其存储在某个地方。如果您希望它更安全,您可以在任何安全目录(如 /etc)中创建一个文件并将密码存储在该文件中,并且在需要时您可以解析该文件,以便通过环境变量更安全。让我知道是否需要更新答案
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-28
  • 2019-01-23
  • 1970-01-01
  • 2022-01-12
  • 2011-02-23
相关资源
最近更新 更多