问题描述
我正在使用 chamber,这是一种管理机密的工具。
基本上,它使用来自指定服务的秘密填充环境并执行给定的命令。
例如:chAmber exec script.sh
将使用在 script.sh
内的房间内定义的环境变量。
我想对 google cloud service account 做同样的事情,以便使用 Google SQL Proxy。
问题是,GOOGLE_APPLICATION_CREDENTIALS env var 是 JSON 文件的路径,而不是实际值。
我可以轻松地将 JSON 存储在 ChAmber 中,但我不能将其用作 env var,除非我将该值复制到 JSON 文件中并将路径传递给 env var。
出于安全原因,我不想将 JSON 文件存储在我的生产实例中。
我知道我可以使用 gcloud auth login 对用户进行身份验证,但我不想安装不必要的库。
我也可以使用令牌:
./cloud_sql_proxy -instances=INSTANCE_NAME -token=TOKEN_VALUE
问题是令牌很快过期。
如果我可以将服务帐户 JSON 文件转换为 base64 字符串并将其用作令牌,那就完美了。
长话短说:
我想将 Google Cloud 身份验证机密存储在我的管理机密工具中,并将其与 cloud_sql_proxy 一起使用。
我的代码在 aws ec2 上运行。
我能想到的最简单的方法是添加 JSON 文件,进行身份验证,然后删除文件...我正在使用打包程序生成实例映像。
知道如何实现这一目标吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)