k8s关于secret

k8s关于secret

   运维菜鸟     2022年10月1日 07:32     1762    

Secret与ConfigMap都是用来存储配置信息的,不同之处在于ConfigMap是明文存储的,而Secret用来保存敏感信息,如:密码、OAuth令牌,ssh key等等。Secret常用有三种类型:

  1. Opaque:使用base64编码格式存储密码等信息,加密性很弱。

  2. kubernetes.io/dockerconfigjson:用来存储私有docker registry的认证信息(仓库地址、登录用户名密码)。

  3. kubernetes.io/service-account-token:用来创建服务账号(Service Account),是一种自动被启用的用户认证机制,用来验证请求的合法性。

  4. kubernetes.io/tls:用于tls通讯模式认证信息

  5. kubernetes.io/ssh-auth:用于ssh认证信息

  6. bootstrap.kubernetes.io/token:启动引导token



1、Opaque类型

命令行创建

kubectl create secret generic mysecret1 --from-literal=username=root --from-literal=password=123456


将文件引入secret

kubectl create secret generic  mysecret --from-file=./keystore.jks


文件创建

因为Opaque类型是base64加密,所以可以使用以下命令先进行加密

echo -n "admin" | base64

echo -n "654321" | base64


apiVersion: v1

kind: Secret

metadata:

  name: mysecret2

type: Opaque

data:

  username: YWRtaW4=

  password: NjU0MzIx

kubectl create -f secret-my2.yaml




文章评论

4

其他文章