python - 在 Python 中打印调试命令时隐藏秘密
问题描述
我正在从 Python(Verticavsql
数据库 cli)调用外部实用程序。我想调试打印命令,但从命令打印中隐藏密码(出于安全原因)。
即如果命令是:
vsql -w mypassword -c "SELECT 1"
我要打印:
vsql -w **** -c "SELECT 1"
或类似的。
以及关于优雅解决方案的想法?
解决方案
另一个优雅的实现是使用数据库 CLI 工具识别的环境变量。在 Vertica 的情况下,变量的名称是VSQL_PASSWORD
.
所以,如果我跑
export VSQL_PASSWORD=blablapassword
python ./myapp.py
子进程命令myapps.py
获取这个环境变量,我可以避免在 vsql 命令中使用密码。
感谢@KyleParsons 提醒该选项!