Google云存储桶中的秘密

时间:2019-01-03 14:05:36

标签: python airflow airflow-scheduler

我们希望有一个生产环境,但是不知道如何正确处理机密,尤其是Google bigquery客户端JSON文件

我们尝试在自动创建的kubernetes集群上设置kubernetes机密(通过在Google Cloud Composer(气流)环境中自动创建)。目前,我们只是将文件放在存储桶中,但希望有更好的方法。

def get_bq_client ():
    """ returns bq client """
    return bq.Client.from_service_account_json(
        join("volumes", "bigquery.json")
    ) 

我们希望对所需的秘密进行某种形式的适当管理。遗憾的是,使用Airflow Variables无效,因为我们无法使用json文件作为文本来创建客户端对象

1 个答案:

答案 0 :(得分:0)

一种可行的解决方案是加密JSON文件并将其放在存储桶中。只要解密密钥存在于存储桶中,并且没有其他地方,您就可以使用某些源代码控制的秘密检入代码,并在存储桶中检出和解密。