将 OpenShift 机密装载到具有受限访问权限的卷/文件中
Mouting OpenShift secrets into volumes / files with restricted access rights
我正在将 OpenShift 3.11 秘密安装到容器中,因为容器元素中的这个新部分位于`dc.spec.template.spec.containers:
volumeMounts:
- name: my-secret
mountPath: /mnt/my-secret
readOnly: true
并将新部分放入 dc.spec.template.spec.containers
:
volumes:
- name: my-secret
secret:
secretName: my-secret
我的 my-secret
是从私钥创建的,如下所示:
oc create secret generic my-secret \
--type=kubernetes.io/ssh-auth \
--from-file=ssh-privatekey=my-private-key
在容器运行时,我在文件 /mnt/my-secret/ssh-privatekey
中找到了装甲私钥。我如何确保只有运行容器的 UID(OpenShift 规则下的随机 UID)才能从该文件中读取,即强制执行类似于 0400
?
的文件模式
将 dc.spec.template.spec.volumes.secret.defaultMode
(如评论中所建议的)设置为 0644
似乎对从 /mnt/my-secret/ssh-privatekey
.
符号链接的文件中的私钥产生了预期的效果
我正在将 OpenShift 3.11 秘密安装到容器中,因为容器元素中的这个新部分位于`dc.spec.template.spec.containers:
volumeMounts:
- name: my-secret
mountPath: /mnt/my-secret
readOnly: true
并将新部分放入 dc.spec.template.spec.containers
:
volumes:
- name: my-secret
secret:
secretName: my-secret
我的 my-secret
是从私钥创建的,如下所示:
oc create secret generic my-secret \
--type=kubernetes.io/ssh-auth \
--from-file=ssh-privatekey=my-private-key
在容器运行时,我在文件 /mnt/my-secret/ssh-privatekey
中找到了装甲私钥。我如何确保只有运行容器的 UID(OpenShift 规则下的随机 UID)才能从该文件中读取,即强制执行类似于 0400
?
将 dc.spec.template.spec.volumes.secret.defaultMode
(如评论中所建议的)设置为 0644
似乎对从 /mnt/my-secret/ssh-privatekey
.