我的客户要求对 .env 文件中输入的数据库和电子邮件凭据进行加密。否则就没有办法说服他们。该应用程序将在其自己的内部 Windows IIS 服务器上托管和运行。他们不希望配置文件中有任何纯文本凭据。
我提出的解决方案是使用存储在 Windows 环境变量中的密钥对凭据进行加密,并在配置加载时在运行时对其进行解密。 这将不允许使用配置缓存(没什么大不了的,因为这个应用程序的流量会非常低)。
此外,另一个要求是密钥必须可由他们配置。
这是一个可以接受的解决方案吗?还有别的办法吗?
谢谢。
这不仅是一个可以接受的解决方案,而且是 github 推荐的解决方案。 https://docs.github.com/en/actions/security-for-github-actions/security-guides/using-secrets-in-github-actions#storing-large-secrets