【发布时间】:2020-03-31 18:19:31
【问题描述】:
保存在 Python Flask 中开发的 API 所需的多个凭据的安全方法是什么?
是否可以加密/散列并将凭据保存在数据库或配置文件中?由于以这种方式存储数据似乎不安全,而且当密码更改时,我们必须以某种方式更新数据库。
有没有更好的办法?
【问题讨论】:
保存在 Python Flask 中开发的 API 所需的多个凭据的安全方法是什么?
是否可以加密/散列并将凭据保存在数据库或配置文件中?由于以这种方式存储数据似乎不安全,而且当密码更改时,我们必须以某种方式更新数据库。
有没有更好的办法?
【问题讨论】:
对于生产环境,机密通常保存在旨在保护机密的东西中,例如 Hashicorp 机密库、Azure Key Vault 或 AWS Secrets Manager。它们安全地保存在环境中,并且仅在环境中可用。
在本地开发时,您可以使用 Keybase 作为将机密保存在文件中并挂载机密目录的地方。
请记住,如果您在源代码中硬编码解密密钥,那么加密您的凭据是没有意义的,这使您回到同一个问题,您将解密密钥保存在哪里?答案;秘密管理器/保险库。
【讨论】: