Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes卷装载权限对于机密不正确_Kubernetes_Kubernetes Secrets - Fatal编程技术网

Kubernetes卷装载权限对于机密不正确

Kubernetes卷装载权限对于机密不正确,kubernetes,kubernetes-secrets,Kubernetes,Kubernetes Secrets,我正在将k8s机密装载为卷装载,而pod中的文件具有错误的权限 在我的部署中我在卷数组中有以下条目: - name: ssh-host-keys secret: secretName: ftp-ssh-host-keys defaultMode: 0600 然后像这样安装: - mountPath: /etc/ssh/ssh_host_rsa_key name

我正在将k8s机密装载为卷装载,而pod中的文件具有错误的权限

在我的
部署中
我在
数组中有以下条目:

        - name: ssh-host-keys
          secret:
            secretName: ftp-ssh-host-keys
            defaultMode: 0600
然后像这样安装:

            - mountPath: /etc/ssh/ssh_host_rsa_key
              name: ssh-host-keys
              subPath: ssh_host_rsa_key
              readOnly: true
但是,当我查看
Pod
中的文件时,文件权限不正确:

rw-r--r-- 1 root root 553122 Aug 21  2018 moduli
-rw-r--r-- 1 root root   1723 Aug 21  2018 ssh_config
-rw-r----- 1 root 1337    410 May 11 10:33 ssh_host_ed25519_key
-rw-r----- 1 root 1337   3242 May 11 10:33 ssh_host_rsa_key
-rw-r--r-- 1 root 1337    465 May 11 10:33 sshd_config
i、 e.密钥的权限为0644而不是0600

我不知道为什么会发生这种情况。

根据,由于JSON的限制,您必须以十进制表示法指定模式

请参阅文档中提供的示例:

apiVersion:v1 种类:豆荚 元数据: 姓名:mypod 规格: 容器: -姓名:mypod 图片:redis 体积数量: -姓名:富 挂载路径:“/etc/foo” 卷数: -姓名:富 秘密: 秘籍名称:mysecret 默认模式:256 256位小数相当于0400位的八进制。在您的特定情况下,您应该使用
defaultMode:384
获取0600以获得所需的权限


您可以转换八进制权限

我认为一个常见的混淆是文件是链接的,因此默认情况下,
ls
将显示链接权限。请参阅更多详细信息

只需添加-L:
ls-laL/path/to/directory/
即可取消对链接的引用


如果这不起作用,也许你正面临挑战。

谢谢,但这不是问题所在。即使在我使用
kubectl get deployment获取部署时,部署也会显示正确的值-o yaml
请共享
kubectl get deployment的输出-o yaml
。这是JSON限制。不是亚姆!你能分享你的完整清单吗,这样我就可以在我的实验室里测试它了?文件并不总是链接的,这取决于秘密是如何装载的。正如您在他的
ls-l
输出中看到的,他没有链接。