Django / Python / Heroku:如何在代码中隐藏密码(替代硬编码)

时间:2014-10-28 18:46:44

标签: python django heroku passwords password-encryption

我最近制作了自定义电子邮件发送功能,这是一个片段:

def send_custom_email(recipient, custom_message):

    ...
    gmail_user = 'myemail@gmail.com'
    gmail_pwd = 'mypassword'
    ...

由于该项目是开源的,我不想硬密码,因为它将公开存储在Github上供任何人查看。他们有什么方法可以隐藏这个密码吗?我究竟该怎么做?例子很有用。

2 个答案:

答案 0 :(得分:3)

您可以将密码设置为应用程序的环境变量的一部分。

  1. 登录Heroku,选择您的应用程序。
  2. 点击“设置”。
  3. 添加配置变量。
  4. 这也可以通过以下命令行完成:

    heroku config:set YOUR_CONFIG_VALUE=whatever
    

    有关详细信息,请参阅:https://devcenter.heroku.com/articles/config-vars

答案 1 :(得分:1)

您可能不希望以这种方式发送电子邮件。但是如果你必须这样做,你应该使用Heroku的配置变量功能隐藏代码库中的敏感信息:https://devcenter.heroku.com/articles/config-vars(有一个python示例)。