|
Ce document a été traduit à l'aide d'une technologie de traduction automatique. Bien que nous nous efforcions de fournir des traductions exactes, nous ne fournissons aucune garantie quant à l'exhaustivité, l'exactitude ou la fiabilité du contenu traduit. En cas de divergence, la version originale anglaise prévaut et fait foi. |
|
Il s'agit d'une documentation non publiée pour Admission Controller 1.34-dev. |
Autoriser les évaluations dans l’espace de noms du contrôleur d’admission
Par défaut, le contrôleur d’admission ne permet pas aux stratégies d’évaluer les ressources dans son propre espace de noms. Cela empêche les erreurs de configuration susceptibles de compromettre Admission Controllerl’installation.
Cette mesure de sécurité est mise en œuvre en deux couches. La première couche est contrôlée par le --always-accept-admission-reviews-on-deployments-namespace drapeau CLI.
Ce drapeau, qui est activé par défaut dans les charts Helm, permet au contrôleur de configurer `KUBEWARDEN_ALWAYS_ACCEPT_ADMISSION_REVIEWS_ON_NAMESPACE`la variable d’environnement dans les déploiements de PolicyServer. Cette variable indique au serveur de stratégies d’accepter toujours les examens d’admission de l’espace de noms défini dans la variable. La deuxième couche est le contrôleur d’admission lui-même, qui par défaut ajoute un sélecteur d’espace de noms aux stratégies à l’échelle du cluster pour ignorer l’espace de noms où le contrôleur s’exécute.
Cependant, dans certains scénarios, les administrateurs de cluster peuvent vouloir que les stratégies évaluent les ressources dans cet espace de noms. Cette page explique comment faire cela en désactivant les deux couches de protection.
Supprimer la variable d’environnement de protection de PolicyServer
La première étape consiste à configurer le contrôleur pour ne pas définir `KUBEWARDEN_ALWAYS_ACCEPT_ADMISSION_REVIEWS_ON_NAMESPACE`la variable d’environnement dans les déploiements de PolicyServer.
Pour ce faire, mettez à niveau votre installation de Admission Controller et définissez la valeur alwaysAcceptAdmissionReviewsOnDeploymentsNamespace du chart Helm kubewarden-controller sur false :
helm upgrade -n kubewarden
--set "alwaysAcceptAdmissionReviewsOnDeploymentsNamespace=false"
kubewarden-controller kubewarden/kubewarden-controller
Ce changement permet aux serveurs de stratégies d’évaluer les ressources de n’importe quel espace de noms. Une fois cela fait, les stratégies peuvent être configurées pour évaluer les examens d’admission de Admission Controllerl’espace de noms.
Configurer des stratégies pour évaluer les ressources dans l’espace de noms du contrôleur d’admission
Pour permettre à une stratégie d’évaluer les ressources créées dans l’espace de noms du contrôleur d’admission, déployez des stratégies à l’échelle du cluster avec allowInsideAdmissionControllerNamespace`le champ dans la spécification défini sur `true:
|
Et les stratégies de l’espace de noms ?
Ce champ de spécification est disponible uniquement dans les stratégies à l’échelle du cluster. Parce que les stratégies de l’espace de noms évaluent les ressources dans le même espace de noms où elles sont déployées, il n’est pas logique d’ajouter ce champ à leurs CRD. De plus, l’espace de noms du contrôleur d’admission doit être géré par les opérateurs de cluster, qui peuvent décider s’il faut déployer une stratégie là-bas. |
apiVersion: policies.kubewarden.io/v1
kind: ClusterAdmissionPolicy
metadata:
annotations:
io.kubewarden.policy.category: PSP
io.kubewarden.policy.severity: medium
name: pod-privileged-policy
spec:
module: registry://ghcr.io/kubewarden/policies/pod-privileged:v1.0.10
settings: {}
rules:
- apiGroups:
- ""
apiVersions:
- v1
resources:
- pods
operations:
- CREATE
mutating: false
allowInsideAdmissionControllerNamespace: true
Cette option de configuration, qui est false par défaut, fait en sorte que le contrôleur omette d’ajouter le sélecteur d’espace de noms qui exclut l’espace de noms du contrôleur d’admission, permettant à la stratégie d’évaluer les ressources de tous les espaces de noms, y compris cet espace de noms.
|
Qu’en est-il de mes sélecteurs d’espace de noms personnalisés ?
Les CRD de stratégies permettent également aux utilisateurs de définir leurs propres sélecteurs d’espace de noms. Ces sélecteurs ne sont pas modifiés. Cela signifie que si un utilisateur définit un sélecteur qui omet Admission Controllerl’espace de noms, la stratégie ignorera toujours cet espace de noms comme prévu. |