存储请求的API密钥



我在不同的.py文件中有一些类使用承载认证密钥对服务进行REST API调用。
由于我不想在每个类中都存储键,所以我想知道应该如何实现这一点。

我应该在哪里以及如何存储密钥?使用这个键的类应该如何访问它?

Best"是主观的,但是经常使用的另一方面是在环境变量

中定义必要的键例如,

config.py

import os
key = os.environ['MY_KEY']

main.py

from config import key
print(key)

那样运行
export MY_KEY='foobar'  # set instead of export on Windows
python main.py

其他解决方案包括使用Hashicorp Vault或密钥管理器在您选择的云提供商中。

一个好的方法是创建一个基类,它从.env文件中加载api键(以及可能的任何其他env变量),并将其作为类成员存储。那么所有需要api键访问的类都可以从基类继承。

不要忘记添加。env文件到。gitignore,这样你就不会与其他用户共享所有的私人信息。

最新更新