【问题标题】:how to manage secrets for different environment in serverless framework如何在无服务器框架中管理不同环境的机密
【发布时间】:2018-05-10 23:01:14
【问题描述】:

我试图弄清楚如何在创建无服务器应用程序时管理不同环境的机密

我的 serverless.yml 文件如下所示:

provider:
  name: aws
  runtime: nodejs6.10
  stage: ${opt:stage}
  region: us-east-1
  environment:
    NODE_ENV: ${opt:stage}
    SOME_API_KEY: // this is different depending upon dev or prod

functions:
  ....

部署时我使用以下命令

serverless deploy --stage prod

我希望从 AWS 参数存储中获取配置信息,如下所述: https://serverless.com/blog/serverless-secrets-api-keys/

但是我看不到为开发或生产环境提供不同密钥的方法。

有什么建议吗?

【问题讨论】:

    标签: serverless-framework


    【解决方案1】:

    我在我的 Parameter Store 变量中添加了前缀。

    例如

    common/SLACK_WEBHOOK
    development/MYSQL_PASSWORD
    production/MYSQL_PASSWORD
    

    然后,在我的serverless.yml,我可以做...

    ...
    environment:
        SLACK_WEBHOOK: ${ssm:common/SLACK_WEBHOOK}
        MYSQL_PASSWORD: ${ssm:${opt:stage}/MYSQL_PASSWORD}
    

    你应该可以做类似的事情。

    【讨论】:

      猜你喜欢
      • 2016-02-01
      • 1970-01-01
      • 2019-04-09
      • 2019-07-04
      • 2015-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-21
      相关资源
      最近更新 更多