问题标签 [aws-parameter-store]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
791 浏览

reactjs - 使用 CDK/AWS 在 React App 中注入 Systems Manager 值的任何方式

我正在从事一项有趣的任务,但到目前为止还无法解决。

配置:

  1. 用于在 SSM 中存储值的后端 AWS 代码管道 (@aws-cdk/aws-ssm)
  2. 前端的 AWS 代码管道,它构建了一个为 React App 构建项目的管道
  3. 带有 buildspec.yml 的 React App git 存储库,由 #2 的管道使用并部署到 S3

问题: 读取存储在 #1 中的值并将其注入 React App 的任何好方法?

我可以在 #2 中轻松阅读它,但该项目仅用于创建管道。因此,我认为前端需要在管道中执行一些特殊步骤,以便在构建或部署步骤期间更新 React App。

有什么绝妙的主意吗?:) 到目前为止我还没有。

谢谢!

buildspec.yml 代码:

0 投票
1 回答
32 浏览

amazon-web-services - 使用数据迁移工具管理 AWS Parameter Store 变量

我们越来越多地使用 AWS Parameter Store 来管理配置。

我们遇到的一个问题是管理在不同环境(staging、dev、prod 等)发生发布时需要设置哪些变量。配置不同的环境总是有很多工作要做,而且我们在发布微服务时很容易忽略所需的设置。

似乎需要的是类似于 Flyway 或 Liquibase 的数据库迁移,但我还没有找到任何可用的产品,而且我不清楚如何使用该系统管理机密。

当部署新的应用程序代码时,人们如何管理将新配置推送到 Parameter Store?

0 投票
1 回答
365 浏览

amazon-web-services - 如何从 EMR 集群的 AWS Paramstore 中提取参数

我们正在使用 EMR。在提交 spark 作业之前,我们尝试从 AWS Param Store 中提取配置参数(我们编写了一个 java 程序)并创建一个文件并在 spark-submit 中使用它。

我们正在使用aws-java-sdk-ssm API 从参数存储中提取参数。

当我们尝试在主节点上运行该程序时,它需要一个令牌 (.aws/configure/credentials) 来连接到 aws ssm 以提取参数。

我们可以在没有任何凭据的情况下访问 S3 存储桶,但不能访问参数存储。

我们正在从大厅管道启动 EMR 集群。

下面是我们编写的从 paramstore 中提取参数的方法:

0 投票
4 回答
11120 浏览

amazon-web-services - 传递 AWS 系统管理器参数存储变量时,Terraform AWS 提供商凭证无效

背景:

我正在使用 AWS CodeBuild buildspec.yml 遍历 GitHub 存储库中的目录,以使用 Terraform 应用 IaC。为了访问 Terraform AWS 提供商所需的凭证,我使用 AWS 系统管理器参数存储来检索 buildspec.yml 中的访问密钥和密钥。

问题:

系统管理器参数存储屏蔽了访问和密钥 env 值,因此当它们被 Terraform AWS 提供程序继承时,提供程序输出凭证无效:

要重现问题:

  • 创建系统管理器参数存储变量(TF_VAR_AWS_ACCESS_KEY_ID=access, TF_AWS_SECRET_ACCESS_KEY=secret)

  • 使用以下命令创建 AWS CodeBuild 项目:

buildspec.yml具有以下内容:(修改为创建 .tf 文件而不是从 github 采购)

尝试:

  1. 通过 terraform-vars选项传递信用:

但我得到相同的无效凭据错误

  1. 在 buildspec.yml 中导出系统管理器参数存储凭据:

这会导致重复的掩码变量和上述相同的错误。printenvbuildspec.yml 中的输出:

可能的解决途径:

  • 以某种方式成功地将 MASKED 参数存储凭据值传递到 Terraform(首选)
  • 使用不同的方法将敏感凭证传递到 Terraform AWS 提供商,例如 AWS 秘密管理器、IAM 角色等。
  • 取消屏蔽参数存储变量以传递到 aws 提供程序(可能首先破坏了使用 aws 系统管理器的目的)
0 投票
1 回答
782 浏览

java - 从 Java 中的 AWS 参数存储中获取值

我需要使用我的 Java 代码获取存储在 aws 参数存储中的 api 令牌。我需要 api 令牌来验证 JiraClient。但我不确定检索价值的正确方法。这是我尝试过的。

在该行this.apiToken = StringParameter.valueForSecureStringParameter(this, "/JIRA/Token", 1);中,第一个参数应该是一个构造对象。

0 投票
0 回答
98 浏览

amazon-web-services - AWS Lambda 尝试使用 Java 访问 AWS Parameter Store

我有一个未与任何 VPC 关联的 AWS Lambda。它正在尝试使用 Java 连接到 AWS Parameter Store。我为参数存储添加了 GetParameter、GetParameters 和 GetParametersByPath 权限。

但我继续收到以下错误的 CONNECTION TIMEOUT

任何帮助,将不胜感激 :)

0 投票
0 回答
418 浏览

jenkins - 如何使用 AWS Parameter Store Build Wrapper Jenkins 插件

我想在我的构建中使用AWS Parameter Store Build Wrapper Jenkins 插件

https://plugins.jenkins.io/aws-parameter-store/

以上是该插件的链接。问题是我没有找到任何关于如何在jenkinsfile.

当我将该插件安装到本地 Jenkins 时,我也看不到如何在任何 jenkins 构建配置页面中配置该插件。

如果有人能对这个问题有所了解,那就太好了。

我的最终目标是从 AWS 参数存储中访问一些东西。如果有任何其他方式可以实现这一点,我也很乐意使用这种方式而不是这个插件。

0 投票
1 回答
492 浏览

node.js - 除了process.env之外,有没有办法在整个项目中访问节点js中的变量(aws-ssm)?

我正在尝试从 aws 参数存储访问我的环境变量,但我不确定如何在所有文件中访问它们而不使其成为全局或将它们存储在 process.env 中。有没有更安全的方法。我想使用导出这些变量,但由于运行时的导出过程和我的 aws 参数是在那之后。谢谢。

注意:- 我没有使用无服务器环境,我可以通过变量名直接访问它们。

0 投票
3 回答
1066 浏览

aws-lambda - Lambda 的参数存储与加密环境变量

我最近正在为安全专业考试做准备,我遇到了一个问题,即在使用 Parameter Store 存储可以保存密码的秘密数据库连接 URL 或在 Lambda 中使用 KMS 加密环境变量之间进行选择。

IMO 环境变量更可取,因为否则对于每天调用数千或数十万次的 Lambda 函数,这可能会开始花费大量成本,甚至可能导致达到帐户限制。

此外,每次调用都增加了获取参数的延迟,这可能并不重要,但仍然会加起来。一般来说,我希望看到为 Lambda 环境变量实现的参考语法以解析为 AWS SSM 参数值,类似于现在为 Cloudformation 为 SSM 和秘密管理器实现的语法。

但在那之前,考虑到成本和延迟的增加,为什么 SSM 比使用 KMS 加密环境变量更受欢迎呢?(这是我在练习考试中看到的建议)

0 投票
1 回答
915 浏览

amazon-web-services - 如何在 CloudFormation 模板中使用 SSM StringList 中的值?

假设我在 SSM ParameterStore 中有一个参数。该参数有一个 StringList 作为值并描述了一个服务,例如 (bucket_name, request_url)

"serviceA" = "bucket_name_A, https://www.request.com/A"

现在,在 CloudFormation 中,我想从此字符串列表中定义我的存储桶的名称。

但显然这将返回完整的字符串列表,而不仅仅是bucket_name_A

如何访问要在 CloudFormation 模板中使用的字符串列表中的参数之一?