Normes de sécurité des pods (PSS) et Security Context Constraints (SCC)
Les normes de sécurité des pods Kubernetes (PSS) et les politiques de sécurité des pods (PSP) définissent les niveaux d'autorisation et limitent le comportement des pods. OpenShift Security Context Constraints (SCC) définissent de la même manière des restrictions de pods spécifiques au OpenShift Kubernetes Engine. Pour permettre cette personnalisation, Trident active certaines autorisations lors de l'installation. Les sections suivantes détaillent les autorisations définies par Trident.
|
|
PSS remplace les Pod Security Policies (PSP). PSP a été déprécié dans Kubernetes v1.21 et sera supprimé dans la v1.25. Pour plus d'informations, consultez "Kubernetes : sécurité". |
Contexte de sécurité Kubernetes requis et champs associés
| Autorisation | Description |
|---|---|
Privilégié |
CSI exige que les points de montage soient bidirectionnels, ce qui signifie que le pod Trident du nœud doit exécuter un conteneur privilégié. Pour plus d'informations, consultez "Kubernetes : propagation du montage". |
Réseau hôte |
Nécessaire pour le démon iSCSI. |
IPC hôte |
NFS utilise la communication interprocessus (IPC) pour communiquer avec le NFSD. |
PID de l'hôte |
Nécessaire pour démarrer |
Capacités |
La |
Seccomp |
Le profil Seccomp est toujours « non confiné » dans les conteneurs privilégiés ; par conséquent, il ne peut pas être activé dans Trident. |
SELinux |
Sur OpenShift, les conteneurs privilégiés s’exécutent dans le domaine |
DAC |
Les conteneurs privilégiés doivent être exécutés en tant que root. Les conteneurs non privilégiés s'exécutent en tant que root pour accéder aux sockets unix requis par CSI. |
Normes de sécurité des pods (PSS)
| Étiquette | Description | Défaut |
|---|---|---|
|
Autorise le contrôleur Trident et les nœuds à être admis dans l’espace de noms d’installation. Ne modifiez pas l’étiquette de l’espace de noms. |
|
|
|
Modifier les étiquettes d'espace de noms peut empêcher la planification des pods, entraîner une « Error creating: … » ou un « Warning: trident-csi-… ». Si cela se produit, vérifiez si l'étiquette d'espace de noms pour privileged a été modifiée. Si c'est le cas, réinstallez Trident.
|
Politiques de sécurité des pods (PSP)
| Champ | Description | Défaut |
|---|---|---|
|
Les conteneurs privilégiés doivent autoriser l'élévation de privilèges. |
|
|
Trident n'utilise pas de volumes CSI éphémères en ligne. |
Vide |
|
Les conteneurs Trident non privilégiés ne nécessitent pas plus de capacités que l'ensemble par défaut et les conteneurs privilégiés se voient accorder toutes les capacités possibles. |
Vide |
|
Trident n'utilise pas de "Pilote FlexVolume", par conséquent, ils ne sont pas inclus dans la liste des volumes autorisés. |
Vide |
|
Le pod Trident du nœud monte le système de fichiers racine du nœud, par conséquent, la configuration de cette liste ne présente aucun avantage. |
Vide |
|
Trident n'utilise aucun |
Vide |
|
Trident ne nécessite aucune opération non sécurisée |
Vide |
|
Aucune capacité n'est requise pour être ajoutée aux conteneurs privilégiés. |
Vide |
|
L'autorisation d'élévation de privilèges est gérée dans chaque pod Trident. |
|
|
Aucun |
Vide |
|
Les conteneurs Trident s'exécutent en tant que root. |
|
|
Le montage de volumes NFS nécessite que l'IPC de l'hôte communique avec |
|
|
iscsiadm nécessite que le réseau hôte communique avec le démon iSCSI. |
|
|
L'identifiant du processus hôte (PID) est requis pour vérifier si |
|
|
Trident n'utilise aucun port hôte. |
Vide |
|
Les pods de nœuds Trident doivent exécuter un conteneur privilégié pour pouvoir monter des volumes. |
|
|
Les pods de nœud Trident doivent écrire sur le système de fichiers du nœud. |
|
|
Les pods de nœuds Trident exécutent un conteneur privilégié et ne peuvent pas supprimer de fonctionnalités. |
|
|
Les conteneurs Trident s'exécutent en tant que root. |
|
|
Les conteneurs Trident s'exécutent en tant que root. |
|
|
Trident n'utilise pas |
Vide |
|
Trident ne configure pas `seLinuxOptions`car il existe actuellement des différences dans la manière dont les environnements d'exécution de conteneurs et les distributions Kubernetes gèrent SELinux. |
Vide |
|
Les conteneurs Trident s'exécutent en tant que root. |
|
|
Les pods Trident nécessitent ces plugins de volume. |
|
Security Context Constraints (SCC)
| Étiquettes | Description | Défaut |
|---|---|---|
|
Les pods de nœud Trident montent le système de fichiers racine du nœud. |
|
|
Le montage des volumes NFS nécessite que l'IPC de l'hôte communique avec |
|
|
iscsiadm nécessite que le réseau hôte communique avec le démon iSCSI. |
|
|
L'identifiant du processus hôte (PID) est requis pour vérifier si |
|
|
Trident n'utilise aucun port hôte. |
|
|
Les conteneurs privilégiés doivent autoriser l'élévation de privilèges. |
|
|
Les pods de nœuds Trident doivent exécuter un conteneur privilégié pour pouvoir monter des volumes. |
|
|
Trident ne nécessite aucune opération non sécurisée |
|
|
Les conteneurs Trident non privilégiés ne nécessitent pas plus de capacités que l'ensemble par défaut et les conteneurs privilégiés se voient accorder toutes les capacités possibles. |
Vide |
|
Aucune capacité n'est requise pour être ajoutée aux conteneurs privilégiés. |
Vide |
|
Les conteneurs Trident s'exécutent en tant que root. |
|
|
Ce SCC est spécifique à Trident et est lié à son utilisateur. |
Vide |
|
Les pods de nœud Trident doivent écrire sur le système de fichiers du nœud. |
|
|
Les pods de nœuds Trident exécutent un conteneur privilégié et ne peuvent pas supprimer de fonctionnalités. |
|
|
Les conteneurs Trident s'exécutent en tant que root. |
|
|
Trident ne configure pas `seLinuxOptions`car il existe actuellement des différences dans la manière dont les environnements d'exécution de conteneurs et les distributions Kubernetes gèrent SELinux. |
Vide |
|
Les conteneurs privilégiés s'exécutent toujours en mode "Unconfined". |
Vide |
|
Les conteneurs Trident s'exécutent en tant que root. |
|
|
Une entrée est prévue pour lier ce SCC à l'utilisateur Trident dans l'espace de noms Trident. |
s.o. |
|
Les pods Trident nécessitent ces plugins de volume. |
|