#python #environment-variables #credentials #coverity #hardcoded
Вопрос:
Я Coverity Scan
сканировал свой проект на Python и получил
Предупреждение HARDCODED_CREDENTIALS
что указывало на то, что для меня небезопасно считывать пароль из файла переменной среды Linux. В частности, я прочитал пароль следующим образом:
import os MY_PASSWORD=os.getenv("MYPASSWD","owner")
И я использую его для подключения к MySQL
следующим:
mysql_conn=pymysql.connect(password=MY_PASSWORD,...)
Как я могу исправить это предупреждение?
Комментарии:
1. Ну, «владелец» — это жестко заданное значение по умолчанию…
2. @JoachimIsaksson итак, как я могу это исправить? просто удалите «владельца» ?
3. Да, удалите
"owner"
строку. Вы не должны жестко указывать значение по умолчанию для чего-то конфиденциального, например пароля. Вместо этого вы должны потерпеть неудачу, если параметр env var не установлен.