我编写了一个需要密码才能运行的 python 程序,我想在启动时安全地读取密码。我也想用 runit 来监督这个程序。
到目前为止,我的程序从环境变量“PASSPHRASE”中读取密码。我打算以这样一种方式启动它,即 runit 会在启动时设置变量:
# !/bin/bash
# file /etc/sv/mypgrm/run
read -s -p "passphrase :" passphrase
exec 2>&1
exec chpst env PASSPHRASE=$passphrase myprgm
但是,这种方法不起作用,并且永远无法到达实际启动程序的行。当我删除脚本的第一行时,程序以空密码开始。
您能否建议一种替代(安全)的处理方式?谢谢!