bash – 类似Sudo的自己脚本密码记忆

我有一个脚本,需要密码来验证Web服务.预定义用户的单个密码就足够了,如果可能,密码应该安全存储(不是纯文本).

显然我出于安全原因不想在脚本中以明文形式写密码,所以我有脚本问我密码,但每次输入密码都是拖拽.

那么我怎样才能这样做,所以每次运行脚本时都不需要输入密码(比如sudo)?

这个特殊情况下的脚本是Python,但我想最好将它作为Bash中的通用解决方案实现,因此它可以重用于PHP或Ruby等不同语言.

代码

#!/bin/bash
pw = cache.load() or {
  pw = ask_user()
  cache.save(pw, 15min)
}
myscript.py pw

解决方法:

不要重新发明自己的密码存储区.使用现有的. Linux世界大多聚合于GNOME Keyring. Seahorse提供了一个方便的GUI,用于浏览和修改密钥环并设置主密码.可以使用secret-tool实用程序从命令行查询密钥环.

secret-tool store --label='Foobar webservice' service foobar account bob
pw=$(secret-tool lookup service foobar account bob)

商店中的密码不会自动过期,但访问商店的权限可以.

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...