amazon-web-services - 在 AWS ECS 上存储 GOOGLE_APPLICATION_CREDENTIALS json 的最佳方式
问题描述
我有一个 GOOGLE_APPLICATION_CREDENTIALS json 文件用于访问我的 bigquery。
我在本地设置export GOOGLE_APPLICATION_CREDENTIALS=<path-to-file>.json
并且一切正常。
我在 AWS 上的服务器呢?
我将 docker 和 ECS 与任务定义一起使用,并且在创建/更新任务定义时设置了所有其他环境变量,但我无法将这个 json 文件存储在那里。
那么我可以访问我的服务器环境上的 GOOGLE_APPLICATION_CREDENTIALS json 文件的路径,我应该将它存储在哪里?
解决方案
我还没有找到任何解决这个案子的办法。因此,我找到了一种从存储在我的环境中的 json 读取数据的方法。
就我而言:
credentials = service_account.Credentials.from_service_account_info(
json.loads(os.environ.get('GOOGLE_APPLICATION_CREDENTIALS_JSON'))
)
client = bigquery.Client(credentials=credentials, project=credentials.project_id)
也许它可以帮助某人。
推荐阅读
- sql - oracle 中的 row_number() 函数
- javascript - Javascript - 链接 2 个(或更多)承诺数组
- laravel - Laravel - 提交表单时出现 419 个问题
- python - 无需借助 csv 文件即可保存和加载复杂的 python 字典
- rabbitmq - 应用程序可以将 RabbitMQ 集群用作单个端点吗?
- php - Codeiginiter - 从用户输入验证并检查数据是否存在于两个表中
- python - 网页抓取后将一种表数据转换为整数用于 if/else 语句
- elasticsearch - Elasticsearch:对内部点击进行排序
- angular - Angular updateTag 函数不会更新源视图 HTML 中的元标记
- sql - Postgresql/SQL 基于多列值插入表