kubernetes使用secrets保存敏感信息
- name: REDIS_PASSWORDvalueFrom:secretKeyRef:name: redis-clusterkey: redis-password
·
application.yml中使用
redis:
host: redis-sec
password: ${REDIS_PASSWORD:null}
port: 6379
deployment.yml中使用
- name: REDIS_PASSWORD
valueFrom:
secretKeyRef:
name: redis-sec
key: redis-password
创建
- 快速创建
kubectl create secret generic redis-sec -n default --from-literal=password=123
有多个data时使用--from-literal=user=root --from-literal=password=123
查看secrets时password
被隐藏掉了
kubectl describe secret redis-sec
没有使用静态加密的话是可能解密的。
- 使用文件创建,如
redis-sec.yaml
apiVersion: v1
data:
password: MTIzCg==
kind: Secret
metadata:
name: redis-sec
secrets里存的是base64格式,所以需要使用base64把明文转换一下
echo 123 |base64
输出
MTIzCg==
可以使用decode解码
echo MTIzCg== |base64 --decode
注意
生产上建议使用静态加密Enable Encryption at Rest,这样就看不到了
参考:
官方说明:https://kubernetes.io/docs/concepts/configuration/secret/
更多推荐
已为社区贡献5条内容
所有评论(0)