【发布时间】:2014-08-16 03:23:31
【问题描述】:
我有一个 IPython 笔记本,它使用加密的 ssh 密钥文件通过 SSH 访问数据。我不想将密码存储在笔记本中(也不想存储在单独的文件中)。我可以使用input 从用户提示符中读取密码,但在这种情况下,密码在屏幕上可见。有没有办法安全地获取密码?
【问题讨论】:
我有一个 IPython 笔记本,它使用加密的 ssh 密钥文件通过 SSH 访问数据。我不想将密码存储在笔记本中(也不想存储在单独的文件中)。我可以使用input 从用户提示符中读取密码,但在这种情况下,密码在屏幕上可见。有没有办法安全地获取密码?
【问题讨论】:
您应该导入getpass 模块,然后调用getpass.getpass。
import getpass
password = getpass.getpass()
请注意,在旧版本中,输入密码的字段可能不会出现在 IPython Notebook 中,而是出现在终端/命令提示符窗口中。但是,在最新版本的 Jupyter Notebook 中,提示将出现在 Notebook 本身中。
【讨论】:
testgetpassword = getpass("pw:") "/opt/conda/lib/python3.6/getpass.py:91: GetPassWarning: 无法控制终端回显。"