
# k8spspforbiddensysctls
#### 基本信息
- 策略类型：安全
- 推荐级别：L3
- 生效资源类型：Pod
- 参数： allowedSysctls：数组
  forbiddenSysctls：数组
  
 
#### 作用
约束PodSecurityPolicy中的"sysctls"字段不能使用的name。
#### 策略实例示例
以下策略实例展示了策略定义生效的资源类型，parameters中的forbiddenSysctls定义了sysctls中不能允许的名称。
```
apiVersion: constraints.gatekeeper.sh/v1beta1
kind: K8sPSPForbiddenSysctls
metadata:
  name: psp-forbidden-sysctls
spec:
  match:
    kinds:
      - apiGroups: [""]
        kinds: ["Pod"]
  parameters:
    forbiddenSysctls:
    # - "*" # * may be used to forbid all sysctls
    - kernel.*
```
#### 符合策略实例的资源定义
示例中sysctls的name符合策略实例。
```
apiVersion: v1
kind: Pod
metadata:
  name: nginx-forbidden-sysctls-disallowed
  labels:
    app: nginx-forbidden-sysctls
spec:
  containers:
    - name: nginx
      image: nginx
  securityContext:
    sysctls:
      - name: net.core.somaxconn
        value: "1024"
```
#### 不符合策略实例的资源定义
示例中sysctls的name（kernel.msgmax）不符合策略实例。
```
apiVersion: v1
kind: Pod
metadata:
  name: nginx-forbidden-sysctls-disallowed
  labels:
    app: nginx-forbidden-sysctls
spec:
  containers:
    - name: nginx
      image: nginx
  securityContext:
    sysctls:
      - name: kernel.msgmax
        value: "65536"
      - name: net.core.somaxconn
        value: "1024"
```
