首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >kubectl:从纯文本中的秘密中获取特定值

问kubectl:从纯文本中的秘密中获取特定值
EN

Stack Overflow用户
提问于 2019-08-06 15:10:24
回答 7查看 20.8K关注 0票数 24

我希望在shell脚本中获得秘密的特定字段的值。

从kubectl get secret文档来看,获得秘密的标准方法是以指定的格式以base64编码的值返回整个事件。

因此,要获取bar秘密的foo字段,输出为未编码的字符串,我将执行以下操作:

代码语言:javascript
复制
kubectl get secret foo -o json | jq -r ".data.bar" | base64 --decode

那是

  • 将整个foo秘密作为JSON获取
  • 管道到jq以从JSON读取bar字段
  • 使用base64解码值

只有使用kubectl**?** 才能这样做吗?

或者在POSIX兼容的shell中使用一种优雅的方法,它不依赖于任何依赖项,比如jq。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2019-08-06 16:48:38

尝尝这个

代码语言:javascript
复制
kubectl get secret foo --template={{.data.bar}} | base64 --decode

不需要jq。

票数 27
EN

Stack Overflow用户

发布于 2019-10-12 15:07:37

自Kubernetes 1.11 (参见PR 60755)以来,这应该是可行的:

kubectl get secret foo -o go-template='{{ .data.bar | base64decode }}'

票数 6
EN

Stack Overflow用户

发布于 2020-12-03 08:55:00

代码语言:javascript
复制
kubectl get secret foo -o jsonpath={.data.bar} | base64 --decode

https://kubernetes.io/docs/reference/kubectl/jsonpath/

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57379081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档