【发布时间】:2021-01-19 21:10:35
【问题描述】:
我正在 Alpine Linux 中访问 AWS Secrets Manager,但如果不在 Linux 中安装 jq 资源,我看不到仅从密钥字符串获取值的方法。
我知道下面的命令可以解决,但 jq 不是标准实用程序:
aws secretsmanager get-secret-value --secret-id secrets| jq --raw-output '.SecretString' | jq -r .<KeyName>
我一直在检查以下命令,但它会返回带有 3 个键值对的 JSON 格式:
aws secretsmanager get-secret-value --secret-id secrets --query SecretString --output text
还有一种选择是使用 Systems Manager Parameter Store,这是可能的,但我不喜欢像在 Secrets Manager 中那样一一创建它们,您可以将用户名、密码、URL 存储在一个秘密字符串中。
【问题讨论】:
-
仅供参考:您也可以使用 python 从命令行解释 json,您使用的是具有 python 的 Alpine 版本吗? Alpine 是非常简单的,所以你没有太多的工作......如果 JSON 结构非常一致,你也可以使用 sed/awk 编写一些东西来提取键值。您的问题并不是真正的秘密管理器问题,而是“如何在不安装任何其他软件包的情况下在 alpine linux 中读取 JSON”。你可能想搜索这个,你会找到一些其他的答案来源
-
你的答案有我需要的提示。将尝试这些选项。谢谢! @约翰·罗滕斯坦
标签: linux amazon-web-services parsing aws-cli aws-secrets-manager