对于带有java应用程序的pod,有安全上下文:
spec:
securityContext:
runAsUser: 888
runAsGroup: 888
fsGroup: 888部署清单:
apiVersion: apps/v1
kind: Deployment
metadata:
name: springboot-demo
spec:
replicas: 1
selector:
matchLabels:
app: springboot-demo
template:
metadata:
labels:
app: springboot-demo
spec:
securityContext:
runAsUser: 888
runAsGroup: 888
containers:
- name: springboot-demo
image: k8s.192.168.20.15.nip.io:5443/springboot-demo:8.0.0
resources:
limits:
memory: "1024Mi"
cpu: "1000m"
ports:
- containerPort: 9000
---
apiVersion: v1
kind: Service
metadata:
name: springboot-demo
spec:
type: NodePort
selector:
app: springboot-demo
ports:
- port: 9000
targetPort: 9000如果我进入容器并运行
jcmd GC.heap_dump
->权限被拒绝图1
如果我以根用户的身份输入并运行
jcmd GC.heap_dump
->无法打开套接字文件/proc/1/root/tmp/..java_pid1 1.pic2
如果我删除安全上下文并运行jcmd GC.heap_dump ->,它可以正常工作。
有什么问题吗?
发布于 2021-10-21 12:55:08
我认为这可能与linux的能力有关:https://linux-audit.com/linux-capabilities-101/。
我将检查由888名用户启动的sh/bash进程可以使用哪些功能,并比较由root启动的bash/sh进程。
https://stackoverflow.com/questions/69617239
复制相似问题