python - 谷歌云存储桶中的秘密
问题描述
我们希望有一个生产气流环境,但不知道如何正确处理机密,特别是 google bigquery 客户端 JSON 文件
我们尝试在自动创建的 kubernetes 集群上设置 kubernetes 机密(通过创建 google cloud composer (airflow) 环境自动创建)。我们目前只是将文件放在存储桶上,但希望有更好的方法。
def get_bq_client ():
""" returns bq client """
return bq.Client.from_service_account_json(
join("volumes", "bigquery.json")
)
我们希望对所需的秘密进行某种形式的适当管理。可悲的是,使用气流变量将不起作用,因为我们无法使用 json 文件作为文本创建客户端对象
解决方案
一种可行的解决方案是加密 JSON 文件并将其放在存储桶中。只要解密密钥存在于存储桶中并且没有其他地方,您就可以将代码签入某些源代码控制的秘密,并在存储桶中签出和解密。
推荐阅读
- c# - 如何在 WebAPI C# 中使用 OAuth 1.0 令牌对多个用户进行验证?
- python-3.x - 导入变压器库时,torch.nn.CrossEntropyLoss().ignore_index 崩溃
- javascript - 第一次单击在 javascript 中无法用于操作 DOM 元素
- javascript - Openweather.com API 5 次日预报问题
- python - Microsoft Graph API 同步 API,更新秘密令牌仅在第二次调用时有效
- html - Django URL 显示上一个和当前页面,但我只想要 URL 中的当前页面名称
- python - 属性错误:模块 tensorflow 没有属性“get_default_graph”?
- delphi - Firemonkey TFrame - 如何触发祖先 TFrame 事件?
- javascript - 是否可以将父div中的所有项目都放在列中
- java - 在 C/C++ 中获取 Kerberos 票证