Предупреждение HARDCODED_CREDENTIALS с файлом переменных среды операционной системы при использовании проверки скрытности

#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 не установлен.