You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The CSI Controller requires privileged access to perform storage management operations that need direct access to host resources, including device management and volume lifecycle control.
581
+
capabilities:
582
+
allowedValues:
583
+
add:
584
+
- SYS_ADMIN
585
+
metadata:
586
+
description: |
587
+
Allow SYS_ADMIN capability for CSI Controller.
588
+
The CSI Controller requires SYS_ADMIN capability to perform privileged storage management operations such as volume provisioning, snapshotting, and direct interaction with the storage backend.
589
+
{{- end }}
590
+
{{- if$runAsRootUser }}
591
+
runAsUser:
592
+
allowedValues:
593
+
- 0
594
+
metadata:
595
+
description: |
596
+
Allow running as root user (UID 0) for CSI Controller.
597
+
The CSI Controller requires root privileges to interact with storage backends, manage volume lifecycle operations, and access cloud provider APIs.
598
+
runAsNonRoot:
599
+
allowedValue: false
600
+
metadata:
601
+
description: |
602
+
Allow running as root for CSI Controller.
603
+
The CSI Controller requires root access for storage management operations that need elevated privileges to interact with the underlying infrastructure.
The CSI Controller requires host network access to communicate with cloud provider API endpoints for volume provisioning, attachment, snapshot, and lifecycle management operations.
615
+
{{- end }}
616
+
{{- ifne$csiControllerHostPID"false" }}
617
+
hostPID:
618
+
allowedValue: true
619
+
metadata:
620
+
description: |
621
+
Allow host PID namespace access for CSI Controller.
622
+
The CSI Controller requires host PID namespace access to interact with host processes for storage operations and coordinate with system-level services.
623
+
{{- end }}
624
+
{{- end }}
625
+
{{- $hasHostPathVolumes:= false }}
626
+
{{- if$additionalControllerVolumes }}
627
+
{{- range$vol:=$additionalControllerVolumes }}
628
+
{{- if$vol.hostPath }}
629
+
{{- $hasHostPathVolumes= true }}
630
+
{{- end }}
631
+
{{- end }}
632
+
{{- end }}
633
+
{{- if$hasHostPathVolumes }}
634
+
volumes:
635
+
types:
636
+
allowedValues:
637
+
- hostPath
638
+
metadata:
639
+
description: |
640
+
Allow hostPath volume type for CSI Controller.
641
+
The CSI Controller requires hostPath volumes for accessing host-level resources needed for storage management operations specific to the cloud provider implementation.
642
+
hostPath:
643
+
allowedValues:
644
+
{{- range$vol:=$additionalControllerVolumes }}
645
+
{{- if$vol.hostPath }}
646
+
- path: {{ $vol.hostPath.path }}
647
+
readOnly: false
648
+
metadata:
649
+
description: |
650
+
Allow access to additional hostPath volume at {{ $vol.hostPath.path }}.
651
+
This hostPath volume is required by the CSI Controller for storage management operations specific to the cloud provider implementation.
652
+
{{- end }}
653
+
{{- end }}
559
654
{{- end }}
560
655
{{- end }}
656
+
{{- end }}
657
+
{{- end }}
658
+
{{- end }}
561
659
562
660
563
661
{{- /* Usage: {{ include "helm_lib_csi_controller_rbac" . }} */ -}}
{{- if hasPrefix "cloud-provider-"$context.Chart.Name }}
@@ -267,6 +271,112 @@ spec:
267
271
{{- $additionalNodeVolumes| toYaml | nindent 6 }}
268
272
{{- end }}
269
273
270
-
{{- end }}
274
+
{{- ifand$securityPolicyExceptionEnabled ($context.Values.global.enabledModules| has "admission-policy-engine-crd") }}
275
+
---
276
+
apiVersion: deckhouse.io/v1alpha1
277
+
kind: SecurityPolicyException
278
+
metadata:
279
+
name: {{ $fullname }}
280
+
namespace: d8-{{ $context.Chart.Name }}
281
+
spec:
282
+
securityContext:
283
+
privileged:
284
+
allowedValue: true
285
+
metadata:
286
+
description: |
287
+
Allow privileged mode for CSI Node Driver.
288
+
The CSI Node Driver requires privileged access to perform critical storage operations such as mounting/unmounting volumes, formatting block devices, and interacting directly with the host kernel for disk management.
289
+
runAsNonRoot:
290
+
allowedValue: false
291
+
metadata:
292
+
description: |
293
+
Allow running as root for CSI Node Driver.
294
+
The CSI Node Driver requires root access to perform privileged storage operations on the host, including device management and filesystem mounting.
295
+
runAsUser:
296
+
allowedValues:
297
+
- 0
298
+
metadata:
299
+
description: |
300
+
Allow running as root user (UID 0) for CSI Node Driver.
301
+
The CSI Node Driver and node-driver-registrar require root privileges to perform storage operations, interact with host devices, and manage volume mounts.
302
+
{{- if$setSysAdminCapability }}
303
+
capabilities:
304
+
allowedValues:
305
+
add:
306
+
- SYS_ADMIN
307
+
metadata:
308
+
description: |
309
+
Allow SYS_ADMIN capability for CSI Node Driver.
310
+
The CSI Node Driver requires SYS_ADMIN capability to perform privileged filesystem operations such as mounting, unmounting, and managing block devices on the host.
The CSI Node Driver requires host network access to communicate with the CSI Controller, coordinate volume attachment operations, and synchronize storage metadata across the cluster.
271
322
{{- end }}
323
+
{{- ifne$csiNodeHostPID"false" }}
324
+
hostPID:
325
+
allowedValue: true
326
+
metadata:
327
+
description: |
328
+
Allow host PID namespace access for CSI Node Driver.
329
+
The CSI Node Driver requires host PID namespace access to interact with host processes for storage operations such as detecting mount points and managing device attachments.
330
+
{{- end }}
331
+
{{- end }}
332
+
333
+
volumes:
334
+
types:
335
+
allowedValues:
336
+
- hostPath
337
+
metadata:
338
+
description: |
339
+
Allow hostPath volume type for CSI Node.
340
+
The CSI Node Driver requires hostPath volumes to access host filesystem paths for proper operation, including communication with the container runtime and access to block devices.
341
+
hostPath:
342
+
allowedValues:
343
+
- path: /var/lib/kubelet/plugins_registry/
344
+
readOnly: false
345
+
metadata:
346
+
description: |
347
+
Allow access to the CSI plugin registry directory.
348
+
CSI Node Driver registers itself in this directory to enable dynamic discovery and communication with the kubelet.
349
+
- path: /var/lib/kubelet
350
+
readOnly: false
351
+
metadata:
352
+
description: |
353
+
Allow access to the kubelet root directory.
354
+
Required for CSI Node Driver to manage volume mounts and access kubelet data structures.
0 commit comments