12-资源注解annotations和安全行下文securityContext(了解即可)

一、资源注解annotations

资源注解,annotations就是对资源进行注释;

应用场景:

给资源(例如pod资源)提供配置信息,类似于帮助信息;

早期使用比较多,很多开源组件一般都会使用;

1,编辑一个pod资源清单加资源注解案例

root@k8s231 annottations\]# cat pod.yaml apiVersion: v1 kind: Pod metadata: name: pod-01 labels: k8s: xinjizhiwa kubernetes: k8s #资源注解(也是键值对写法) annotations: help: is a playbook,please user know it a: b b: c c: d spec: containers: - name: c1 image: centos:7 command: - "tail" - "-f" - "/etc/hosts"

2,创建pod资源

root@k8s231 annottations\]# kubectl apply -f pod.yaml

3,查看资源注解

root@k8s231 annottations\]# kubectl describe pods pod-01 Name: pod-01 Namespace: default Priority: 0 Node: k8s233/10.0.0.233 Start Time: Thu, 15 Feb 2024 19:14:00 +0800 Labels: k8s=xinjizhiwa kubernetes=k8s #资源注解位置; Annotations: a: b b: c c: d help: is a playbook,please user know it ..................

二、安全上下文securitycontext

当我们运行一个pod的容器的时候,存在一个风险,就是当有人登录到容器当中时,使用root用户登录,并修改文件等危险操作,会导致业务出现严重的安全问题,因此,k8s提供了安全上下文securitycontext,用来控制有人登录到容器当中进行的操作;

1,编辑pod资源清单配置安全上下文

root@k8s231 securitycontext\]# cat pod.yaml apiVersion: v1 kind: Pod metadata: name: pod-centos7 spec: containers: - name: c1 image: centos:7 command: \["tail","-f","/etc/hosts"

#配置pod的容器中安全相关属性

securityContext:

#配置容器为特权容器,若配置了特权容器,可能对capabilities测试有影响;

#privileged: true

#自定义linux内核特性

capabilities:

#添加所有的linux内核功能

add:

  • ALL

#移除指定linux内核特性

drop:

#代表禁用网络管理的配置

  • NET_ADMIN

#代表禁用uid和gid,表示你无法使用chown命令;

  • CHOWN

#禁用chroot命令

  • SYS_CHROOT

#如果容器的进程以root身份运行,则禁止容器启动;

runAsNonRoot: true

#指定运行容器的用户uid,注意该用户的uid必须事先存在于镜像中;

runAsUser: 666

2,创建pod

root@k8s231 securitycontext\]# kubectl apply -f pod.yaml

3,进入容器查看是否配置成功

root@k8s231 securitycontext\]# kubectl exec -it pod-centos7 -- sh sh-4.2$ whoami whoami: cannot find name for user ID 666 sh-4.2$ cd /root sh-4.2$ ls -l total 4 -rw------- 1 root root 3416 Nov 13 2020 anaconda-ks.cfg sh-4.2$ touch 1.txt touch: cannot touch '1.txt': Permission denied

可以看见,没有这个666的用户,什么都干不了;

至此,安全上下文于资源注解完毕;

相关推荐
devmoon23 分钟前
在 Polkadot 上部署独立区块链Paseo 测试网实战部署指南
开发语言·安全·区块链·polkadot·erc-20·测试网·独立链
成茂峰27 分钟前
软考高级·系统架构设计师 | 四、信息技术安全知识
安全·信息安全·系统架构·架构设计师
向哆哆1 小时前
CANN生态安全保障:cann-security-module技术解读
人工智能·安全·cann
wuli_滔滔1 小时前
CANN安全机制源码探秘 仓库中的权限校验与数据加密实现
安全·cann
liann1192 小时前
3.1_网络——基础
网络·安全·web安全·http·网络安全
独行soc2 小时前
2026年渗透测试面试题总结-17(题目+回答)
android·网络·安全·web安全·渗透测试·安全狮
小羊不会打字2 小时前
CANN 生态中的模型安全加固:`secure-model-deploy` 项目实践指南
安全·neo4j
独行soc3 小时前
2026年渗透测试面试题总结-18(题目+回答)
android·网络·安全·web安全·渗透测试·安全狮
浩浩测试一下4 小时前
内网---> WriteOwner权限滥用
网络·汇编·windows·安全·microsoft·系统安全
Loo国昌5 小时前
【大模型应用开发】第六阶段:模型安全与可解释性
人工智能·深度学习·安全·transformer