amazon-web-services - AWS Secrets Manager - 在本地 Codebuild 容器中使用密钥
问题描述
我有存储在 AWS Secrets Manager 中的数据库凭证,我想将其提取并设置为本地化 Codebuild 容器中的环境变量。我正在使用 4.0 Codebuild 映像和 codebuild_build.sh 脚本在我的本地机器上测试 Codebuild。
目前我的 buildspec.yml 在开始时看起来像这样:
version: 0.2
env:
secrets-manager:
DATABASE_USER: <secret_name>:<secret_key_for_database_user>
当我运行脚本时,我得到了这个:
agent_1 | [Container] 2020/12/06 21:30:16 Phase context status code: Secrets Manager Error Message: ResourceNotFoundException: Secrets Manager can't find the specified secret.
agent_1 | [Container] 2020/12/06 21:30:16 Runtime error (*clienterr.PhaseContextError: ResourceNotFoundException: Secrets Manager can't find the specified secret.)
我尝试使用 aws 客户端获取秘密,并且效果很好。我认为这不是我的凭据的问题,因为在使用 -c 选项运行 codebuild_build.sh 脚本以及将我的 aws 密钥 ID 和密钥本身硬编码到 buildspec.yml 时,我会执行此步骤。我也尝试过使用秘密的完整 ARN,但没有运气。
我在这里缺少一个技巧吗?我是否需要在 AWS Secrets Manager 或 Codebuild(本地和 AWS)上更新密钥本身的资源权限?
解决方案
推荐阅读
- sql - 我如何告诉 PATCH 方法我要更新哪个字段
- ruby-on-rails - ld:安装包时找不到 -l-lruby.1.9.1 的库
- java - Glide的Android图像下载问题
- javascript - 如何从使用封闭模式创建的影子根中查询选择
- javascript - React:大日历字体样式
- angularjs - 如何在 AngularJS 中使用 $interpolate 保留字符串的不可插值部分
- xamarin.forms - 具有完整功能的 Xamarin 表单位置
- django - 从子视图访问祖父母数据
- javascript - 无法在我的 iOS 设备上安装反应原生应用程序
- c++ - 使用 cmake 链接外部库