Aws lambda 如何使用无服务器框架管理生产、测试和开发环境
我计划使用aws lambda和无服务器框架构建一个企业应用程序 我想分离开发、测试和产品环境,并计划使用AWS参数存储 我不想让开发人员看到我的生产环境配置。如果开发人员运行命令Aws lambda 如何使用无服务器框架管理生产、测试和开发环境,aws-lambda,serverless-framework,serverless,Aws Lambda,Serverless Framework,Serverless,我计划使用aws lambda和无服务器框架构建一个企业应用程序 我想分离开发、测试和产品环境,并计划使用AWS参数存储 我不想让开发人员看到我的生产环境配置。如果开发人员运行命令serverless offline-s production start,则不应获取生产配置 只有在将无服务器功能成功部署到aws lambda后,才能获得此功能。根据您的问题,这里有一些注意事项: 要在无服务器框架上拥有不同的环境,您必须设置阶段。此值可以在执行sls命令时作为参数传递 如果您将代码保存在repo
serverless offline-s production start
,则不应获取生产配置
只有在将无服务器功能成功部署到aws lambda后,才能获得此功能。根据您的问题,这里有一些注意事项:
- 要在无服务器框架上拥有不同的环境,您必须设置阶段。此值可以在执行sls命令时作为参数传递
- 如果您将代码保存在repo中,那么开发人员将可以访问所有配置。如果这真的很重要,您可以将生产配置保存在diff repo中,只有非常特定的人才能访问它,然后在serverless.yml中引用in。前任:
然后在您的配置文件夹中创建prod.json文件,但指向您创建的新repo的真实文件。注意:这将使您的项目更难维护custom:${file(./config/${opt:stage,'dev'}.json)}
- 考虑到您不希望开发人员在本地执行您的生产环境。您可以使用serverless offline的全局变量来阻止执行。你也可以通知他们不要这样做
- 考虑到您有一个生产环境要与公司中的给定组隔离,您应该创建VPC并相应地配置其资源访问
- 然后创建具有不同访问权限的用户。当您的开发人员试图执行代码访问VPC中的资源(例如dynamoDB)时,他们没有访问权限,他们将被阻止
- AWS配置以定义将执行SLS命令的用户
- 您的开发团队仍然可以访问您的配置文件 注意:在这种情况下,有权访问生产专有网络的人员/组必须进行部署