Kubernetes Secrets - 类型" Opaque"的目的是什么?秘密定义

时间:2017-07-15 16:24:11

标签: kubernetes kubernetes-security

在大多数关于在Kubernetes中使用秘密的例子中,你可以找到类似的例子:

apiVersion: v1
kind: Secret
metadata:
  name: mysecret
type: Opaque
data:
  username: User
  password: **********

上述定义中type: Opaque的目的是什么?还有哪些其他类型(以及哪些用例)可以在那里指定?

4 个答案:

答案 0 :(得分:21)

type: Opaque意味着从kubernetes的角度来看,这个秘密的内容是非结构化的,它可以包含任意键值对。

相比之下,有秘密存储ServiceAccount凭据,或用作ImagePullSecret的凭据。这些内容有限。

答案 1 :(得分:2)

所有类型:

SecretType = "Opaque"                                 // Opaque (arbitrary data; default)
SecretType = "kubernetes.io/service-account-token"    // Kubernetes auth token
SecretType = "kubernetes.io/dockercfg"                // Docker registry auth
SecretType = "kubernetes.io/dockerconfigjson"         // Latest Docker registry auth

要了解更多信息,请参见Secrets design document

答案 2 :(得分:0)

答案 3 :(得分:-2)

看起来像是客户端的只读值,不允许客户端修改此值。

  

客户端必须将此值视为不透明,并且未经修改即传递   回到发球局

此页面包含resourceVersion提交的详细信息。

修改

此处链接更改是文档信息:

  

resourceVersion string表示内部的不透明值   客户端可以使用此对象的版本来确定何时   对象已经改变。可用于乐观并发,改变   检测,以及对资源或资源集的监视操作。   客户端必须将这些值视为不透明并将其修改为未修改   到服务器。它们可能仅对特定资源或集合有效   资源。由系统填充。只读。价值必须是   被客户视为不透明的。更多信息:   https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency

https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.9/