首页 > 其他分享 >如何在pod级别进行安全的设置,设置容器的运行用户、用户组、挂载数据卷的权限?

如何在pod级别进行安全的设置,设置容器的运行用户、用户组、挂载数据卷的权限?

时间:2023-07-25 17:13:22浏览次数:60  
标签:demo 用户组 2000 ls 设置 pod data 1000


通过下面的yaml配置文件,在pod级别进行安全的设置:

 

apiVersion: v1
kind: Pod
metadata:
  name: security-context-demo
spec:
  securityContext:
    runAsUser: 1000
    runAsGroup: 3000
    fsGroup: 2000
  volumes:
  - name: sec-ctx-vol
    emptyDir: {}
  containers:
  - name: sec-ctx-demo
    image: 172.20.58.152/middleware/busybox:1.36
    command: [ "sh", "-c", "sleep 1h" ]
    volumeMounts:
    - name: sec-ctx-vol
      mountPath: /data/demo
    securityContext:
      allowPrivilegeEscalation: false

 

 

在pod的securityContext的部分,设置:

    runAsUser: 1000  # 用户ID
    runAsGroup: 3000 # 用户组ID
    fsGroup: 2000    # 文件挂载组ID

 

 

创建pod,并且进入容器:

 

运行的用户、用户组

~ $ id
uid=1000 gid=3000 groups=2000
~ $ 

 

 

程序以id 1000运行

~ $ ps aux
PID   USER     TIME  COMMAND
    1 1000      0:00 sh -c sleep 1h
   13 1000      0:00 sh
   20 1000      0:00 ps aux
~ $ 

 

 

数据卷,挂载所在用户组是2000

~ $ cd /data
/data $ ls
demo
/data $ ls -l
total 4
drwxrwsrwx    2 root     2000          4096 Jul 25 08:22 demo
# 默认是 root用户,2000用户组

/data $ cd demo/
/data/demo $ ls

# 新建文件,用户ID 1000,用户组 2000
/data/demo $ touch tesdt01
/data/demo $ ls
tesdt01
/data/demo $ ls -l
total 0
-rw-r--r--    1 1000     2000             0 Jul 25 08:24 tesdt01
/data/demo $ 

 

标签:demo,用户组,2000,ls,设置,pod,data,1000
From: https://www.cnblogs.com/chuanzhang053/p/17580326.html

相关文章

  • ubuntu 设置 python环境变量
    Ubuntu设置Python环境变量在Ubuntu上设置Python环境变量是一项重要的任务,因为它允许您轻松地访问和使用Python解释器、模块和包。本文将向您介绍如何设置Python环境变量,并提供一些示例来帮助您更好地理解。什么是环境变量?环境变量是操作系统中一些特定值的名称,这些值......
  • uniapp,打开安卓系统设置的应用信息页面或者耗电详情页面(用于用户手动设置后台启动)
    openSettings(){ varmain=plus.android.runtimeMainActivity(); //varpkName=main.getPackageName();//获取包名 //varuid=main.getApplicationInfo().plusGetAttribute("uid"); varIntent=plus.android.importClass('android.conte......
  • Echarts中柱状图的基本设置
    Echarts-去掉图表横纵坐标轴刻度线效果图去掉前:去掉后:axisTick:{show:false}X轴Y轴文字颜色和大小的设置axisLabel:{textStyle:{color:"#f9f9f9",fontSize:12}}X轴Y轴刻度线的颜色和宽度的设置:axisLine:{show:true,//......
  • Kubernetes修改Pod数量
    修改kubeletpod数量并在启动命令尾部添加变量$KUBELET_NODE_MAX_PODS如下:重启kubelet:[root@k8s02~]#systemctldaemon-reload&&systemctlrestartkubelet检查结果:[root@k8s02~]#kubectldescribenodek8s02|greppodspods:150pods:......
  • 2023-07-25 uview1.0的u-number-box组件在渲染时会触发change,如何才能避免事件影响?==
    前言:购物车用到加减购物车数量的一个步进器组件,使用的是uview组件1.0版本的u-number-box。该组件设置了一个@change事件,该事件会在页面渲染的时候触发一次,如果你在里面调用了接口,比如增加/减少购物车数量,那么每次一刷新购物车该事件就会被触发,从而导致不必要的报错。解决方案:在......
  • WPF设置字体和字号
    最简单在MainWindow.xaml设置,字体FontFamily,字号FontSize<Windowx:Class="TestWpf.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"......
  • mRemoteNG 设置共享账号
    FoldersandInheritance—mRemoteNGdocumentation可以通过在文件夹设置账号和密码,然后文件夹下的Connection继承账号和密码Rightnownothinghaschangedandnothingwillbeinherited.Toenableinheritanceswitchtotheinheritanceviewbyclickingthededicated......
  • 网站通过nginx设置黑/白名单IP限制、国家城市IP访问限制
    网站通过nginx设置黑/白名单IP限制、国家城市IP访问限制 一、黑/白名单IP限制访问配置nginx配置黑白名单有好几种方式,这里只介绍常用的两种方法。1、第一种方法:allow、denydeny和allow指令属于ngx_http_access_module,nginx默认加载此模块,所以可直接使用。这种方式,最简单,最直......
  • CentOS7 DNS 设置
    CentOS7,手工设置/etc/resolv.conf里的DNS,重启网络服务,系统会重新覆盖,一般采用以下办法修改DNS配置。1.使用命令行工具nmcli设置#显示当前网络连接nmcliconnectionshowNAMEUUIDTYPEDEVICEcni0ac5d429e-cbc2-......
  • kubectl - 如何列出Pod中运行的所有容器,包括初始化容器
    初始化容器存储在spec.initContainers中:kubectlgetpodsPOD_NAME_HERE-ojsonpath={.spec.initContainers[*].name}运行的所有容器在containers中kubectlgetpodsPOD_NAME_HERE-ojsonpath={.spec.containers[*].name}可以使用JSONPathmagic来显示两者kubectlgetpo......