2024-04-25 23:07:15 发布
网友
我有一个flask应用程序,我想在一个表中添加所有常量,包括我的应用程序的email常量,并从那里访问它们。我们可以这样做吗?这是一个好方法吗? 或者有没有更好的替代方案,而不是有证书纯文本。你知道吗
如果我错了,请纠正我你问这个问题的原因是:
案例1:
您不希望密码在配置文件中清晰可见。你知道吗
案例2:
您的代码可能在公共域中,您不希望API密钥和密码可见。你知道吗
案例3:
在生产环境中配置.py不应该是易受攻击的,因为它将密码存储为纯文本。你知道吗
在案例1中: 您可以将凭据存储在环境变量中 `你知道吗
MAIL_USERNAME = os.environ.get('MAIL_USERNAME') MAIL_PASSWORD = os.environ.get('MAIL_PASSWORD')
`
在案例2中:
您可以在Flask中使用Instance folder的概念
其中有一个配置.py不需要在版本控制中添加
config.py requirements.txt run.py instance/ config.py yourapp/ __init__.py models.py views.py templates/ static/
在上使用实例配置.py你知道吗
app = Flask(__name__, instance_relative_config=True) app.config.from_object('config') app.config.from_pyfile('config.py')
请参考this它将给出一个深入的理解。你知道吗
在案例3中:引用this thread
对于生产服务器来说,一个好的解决方案是托管邮件代理(如sendmail或postfix),或者使用第三方电子邮件服务。如果您在与Flask应用程序相同的主机上托管邮件代理,则可以将其配置为当客户端来自localhost时不需要身份验证,这样就不需要在配置文件或环境中存储凭据。你知道吗
如果我错了,请纠正我你问这个问题的原因是:
案例1:
您不希望密码在配置文件中清晰可见。你知道吗
案例2:
您的代码可能在公共域中,您不希望API密钥和密码可见。你知道吗
案例3:
在生产环境中配置.py不应该是易受攻击的,因为它将密码存储为纯文本。你知道吗
在案例1中: 您可以将凭据存储在环境变量中 `你知道吗
`
在案例2中:
您可以在Flask中使用Instance folder的概念
其中有一个配置.py不需要在版本控制中添加
在上使用实例配置.py你知道吗
请参考this它将给出一个深入的理解。你知道吗
在案例3中:引用this thread
对于生产服务器来说,一个好的解决方案是托管邮件代理(如sendmail或postfix),或者使用第三方电子邮件服务。如果您在与Flask应用程序相同的主机上托管邮件代理,则可以将其配置为当客户端来自localhost时不需要身份验证,这样就不需要在配置文件或环境中存储凭据。你知道吗
希望对你有帮助
和平
相关问题 更多 >
编程相关推荐