下面哪些是Security Context的设置项

下面哪些是Security Context的设置项
A. SELinux
B. privileged
C. Seccomp
D. AllowPrivilegeEscalation

选择ABCD
Security Context的设置项包括runAsUser、‌fsGroup、allowPrivilegeEscalation和sysctls。‌

runAsUser:‌这个设置项用于指定容器默认用户的UID,‌确保容器以特定的用户身份运行,‌从而控制容器内的文件访问权限。‌例如,‌runAsUser: 1000 表示容器将以UID为1000的用户身份运行。‌
fsGroup:‌用于设置数据卷挂载后的目录属组,‌确保容器访问文件时具有适当的组权限。‌
allowPrivilegeEscalation:‌这个设置项用于控制是否允许容器内的进程提升权限。‌设置为false将不允许容器内的进程提升权限,‌增加了安全性。‌
sysctls:‌允许在容器中修改特定的系统调用参数,‌尽管只有一小部分的sysctls可以在每个容器的基础上进行修改,‌但这个设置项提供了对容器内部系统配置的精细控制。‌
这些设置项共同构成了Security Context,‌旨在提供对容器运行环境的细粒度安全控制,‌确保容器化应用的安全性和隔离性。‌

安全上下文(Security Context)定义 Pod 或 Container 的特权与访问控制设置。安全上下文包括但不限于:

自主访问控制(Discretionary Access Control):基于 用户 ID(UID)和组 ID(GID).来判定对对象(例如文件)的访问权限
安全性增强的 Linux(SELinux):为对象赋予安全性标签。
以特权模式或者非特权模式运行。
Linux 权能: 为进程赋予 root 用户的部分特权而非全部特权。
AppArmor:使用程序文件来限制单个程序的权限。
Seccomp:限制一个进程访问文件描述符的权限。
AllowPrivilegeEscalation:控制进程是否可以获得超出其父进程的特权。此布尔值直接控制是否为容器进程设置no_new_privs 标志。当容器以特权模式运行或者具有 CAP_SYS_ADMIN权能时,AllowPrivilegeEscalation 总是为 true。
readOnlyRootFilesystem:以只读方式加载容器的根文件系统。

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

在配置文件中,该runAsUser字段指定对于Pod中的任何容器,所有进程都以用户ID 1000运行。

该runAsGroup字段为Pod中的任何容器中的所有进程指定主组ID3000。如果省略此字段,则容器的主要组ID将为root(0)。runAsGroup指定时,用户1000和组3000也将拥有所有创建的文件。

由于fsGroup指定了字段,因此容器的所有进程也是补充组ID2000的一部分。卷的所有者/data/demo和在该卷中创建的任何文件都将是组ID 2000。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值