首页 > 其他分享 >secret

secret

时间:2022-11-10 23:12:18浏览次数:57  
标签:name kubernetes -- create secret io

目录

Secret 类似于 ConfigMap 但专门用于保存机密数据。每个 Secret 的尺寸最多为 1MiB,不可以在静态 Pod 中使用 ConfigMap 或 Secret。

类型

Kubernetes 提供若干种内置的类型,用于一些常见的使用场景。 针对这些类型,Kubernetes 所执行的合法性检查操作以及对其所实施的限制各不相同。

内置类型 用法
Opaque 用户定义的任意数据
kubernetes.io/service-account-token 服务账号令牌
kubernetes.io/dockercfg ~/.dockercfg 文件的序列化形式
kubernetes.io/dockerconfigjson ~/.docker/config.json 文件的序列化形式
kubernetes.io/basic-auth 用于基本身份认证的凭据
kubernetes.io/ssh-auth 用于 SSH 身份认证的凭据
kubernetes.io/tls 用于 TLS 客户端或者服务器端的数据
bootstrap.kubernetes.io/token 启动引导令牌数据

dockerconfigjson

创建方式一:

kubectl create secret docker-registry my-secret --from-file=.dockerconfigjson=/root/.docker/config.json --dry-run=client -oyaml

创建方式二:

kubectl create secret docker-registry mydocker-registry --docker-server=http://192.168.122.100:5000  --docker-username=admin --docker-password=123 --dry-run=client -oyaml

Opaque

创建方式一:

#从目录生成
kubectl create secret generic mysecret --from-file ./1 --dry-run=client -oyaml

创建方式二:

#从文件生成
kubectl create secret generic mysecret --from-file=./1.sh --from-file=./2.sh --dry-run=client -oyaml

创建方式三:

#从文件生成,指定key名称
kubectl create secret generic mysecret --from-file=k1=./1.sh --from-file=k2=./2.sh --dry-run=client -oyaml

创建方式四:

#从字面输入生成
kubectl create secret generic mysecret --from-literal=user=admin --from-literal=pass='!@#$' --dry-run=client -oyaml

创建方式五:

echo k1=1 >env
echo k2=2 >>env
echo k3=3 >>env
#从k==>v文件中生成
kubectl create secret generic mysecret --from-env-file=./env --dry-run=client -oyaml

tls

创建方式一:

kubectl create secret tls tls-secret --cert=path/to/tls.cert --key=path/to/tls.key

service-account-token

说明:

k8s v1.22版本之前都会自动为serviceAccount创建secret

在最近版本中,包括k8s v1.25中,不在自动创建secret。被 TokenRequest取代, 你可以使用 kubectl create token 命令调用 API 获得令牌。

应该先创建 ServiceAccount 对象。kubernetes.io/service-account-name

apiVersion: v1
kind: Secret
metadata:
  name: secret-sa-sample
  annotations:
    kubernetes.io/service-account.name: "sa-name"
type: kubernetes.io/service-account-token
data:
  # 你可以像 Opaque Secret 一样在这里添加额外的键/值偶对
  extra: YmFyCg==

使用secret

  1. 作为容器变量

    - name: SECRET_USERNAME
      valueFrom:
        secretKeyRef:
          name: mysecret		#configMap的名字
          key: username	
    
  2. 存储卷方式挂载

    volumes:
    - name: cert
      secret:
        name: mysecret
        items:
        - key: ca.crt
          path: ca.crt
          mode: 600	
        defaultMode: 644
    

    挂载在secret中的所有资源

    volumes:
    - name: cert
      secret:
        name: mysecret
        defaultMode: 644
    
  3. imagePullSecret

    kind: Pod
    ...
    spec:
      imagePullSecrets:
        name: mydocker-registry
    

标签:name,kubernetes,--,create,secret,io
From: https://www.cnblogs.com/wangend/p/16879157.html

相关文章

  • 创建阿里云镜像仓库imagePullSecrets
    1.docker登录仓库,根据提示[root@ks-node05~]#dockerlogin--username=mq-ops2@1910650714221478registry-vpc.cn-hangzhou.aliyuncs.com#因为是阿里云ECS,所以用了......
  • D. Secret Passwords_并查集
    D.SecretPasswords题目大意给一堆字符串,两个串有一个字母一样就算等效。问所有字符串里有几个不等效的。思路并查集入门题llfa[N];llfind(llx){ returnfa[x......
  • 对外提供API,通过appId、appSecret、sign秘钥对接口做鉴权
    一、背景在接口开发过程中,我们通常不能暴露一个接口给第三方随便调用,要对第三方发来参数进行校验,看是不是具有访问权限。名词介绍:1、appId:应用id,用户自定义命名,如:*-ac......
  • 配置容器应用Secret
    Secret资源的功能类似于ConfigMap,但它专用于存放敏感数据,例如密码、数字证书、私钥、令牌和SSHkey等,而不需要把这些敏感数据暴露到镜像或者PodSpec中。Secret可以以V......
  • docker secret保存在哪里?
    0、关键问题dockersercret是用来保存敏感数据的,然后给service来用,用来确保关键数据的安全性。 那么,问题是: dockersecret的数据保存在哪里? 1、dockersecret......
  • Secret Santa
    传送门题意:n个人,每个人选择自己喜欢的人送礼物,但是不能选自己,题目给出最初的每个人喜欢送的人,问构造一个序列,要使尽可能多的人能够送给自己喜欢送的人,而且自己不能送给自......
  • ServiceAccounts 及 Secrets 重大变化
    关于ServiceAccounts及其Secrets的重大变化kubernetesv1.24.0更新之后进行创建ServiceAccount不会自动生成Secret需要对其手动创建创建ServiceAccountcat<<EO......
  • Luogu P6937 [ICPC2017 WF]Secret Chamber at Mount Rushmore
    (从洛谷博客搬过来的)简要题意:告诉你可以从哪些字符转化为哪些字符,然后再问你某一个字符串能否转化为另一个字符串。这里提供两种做法:爆搜和传递闭包。算法一爆搜看到......
  • 如何通过secrets保存敏感的数据?并且在service中使用?
    什么是secrets? 前面的部分,你已经看到了config的使用方式,config中,存放的是明文的内容,以文件的方式挂载到容器中,今天的说的secret存放的是敏感的数据,比如,证书,key等 主......
  • git-secret:在 Git 存储库中加密和存储密钥(上)
    当涉及处理机密信息(如密码、令牌、密钥文件等)等,以下问题值得考虑:安全性十分重要,但高安全性往往伴随着高度的不便。在团队中,共享某些密钥有时无法避免(因此现在我们需......