【问题标题】:How to store GOOGLE_APPLICATION_CREDENTIALS in an AWS ECS environment on Fargate?如何在 Fargate 上的 AWS ECS 环境中存储 GOOGLE_APPLICATION_CREDENTIALS?
【发布时间】:2020-10-14 18:08:18
【问题描述】:

我们有一个 API 应用,它使用 Firebase Admin 向设备发送消息。 之前,我们使用 GOOGLE_APPLICATION_CREDENTIALS="path_to_file.json" 等环境变量来指定服务帐户密钥。 但是现在,由于我们正在转移到 Fargate 上的 AWS Elastic Container Service,我无法弄清楚如何将此文件放入 AWS ECS 的容器中。

非常感谢任何建议。

谢谢

【问题讨论】:

    标签: amazon-web-services environment-variables amazon-ecs google-authentication firebase-admin


    【解决方案1】:

    通过将服务密钥存储为 JSON 字符串化环境变量并使用 admin.credential.cert() 而不是 defaultAppCredentials 解决了这个问题。 参考:https://firebase.google.com/docs/reference/admin/node/admin.credential#cert

    【讨论】:

      【解决方案2】:

      我建议改为专门用于存储机密的 AWS Secrets Manager。看看他的博文:

      https://aws.amazon.com/blogs/compute/securing-credentials-using-aws-secrets-manager-with-aws-fargate/

      【讨论】:

      【解决方案3】:

      与使用具有自己的 downsides 的环境变量相比,您可以利用 AWS Parameter Store,这是一种在 AWS 环境中管理机密的安全方法(其中机密在传输和静止时都被加密)。

      您需要为 Amazon ECS 创建一个 IAM 角色,您的代码才能访问 Parameter Store。

      您可能想查看这篇文章:https://aws.amazon.com/blogs/compute/managing-secrets-for-amazon-ecs-applications-using-parameter-store-and-iam-roles-for-tasks/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-11-10
        • 2019-10-04
        • 2020-04-30
        • 1970-01-01
        • 2021-08-29
        • 2021-10-10
        • 2020-02-05
        相关资源
        最近更新 更多