Policy Controller enthält eine Standardbibliothek mit Einschränkungsvorlagen, die mit dem PCI-DSS v3.2.1-Bundle verwendet werden können, um die Compliance Ihrer Clusterressourcen mit einigen Aspekten des Payment Card Industry Data Security Standard (PCI-DSS) v4.0 zu bewerten.
Diese Seite richtet sich an IT-Administratoren und -Betreiber, die dafür sorgen möchten, dass alle auf der Cloud-Plattform ausgeführten Ressourcen die Compliance-Anforderungen des Unternehmens erfüllen, indem sie Automatisierungsfunktionen zur Prüfung oder Durchsetzung bereitstellen und aufrechterhalten. Weitere Informationen zu gängigen Rollen und Beispielaufgaben, auf die wir in Google Cloud-Inhalten verweisen, finden Sie unter Häufig verwendete GKE Enterprise-Nutzerrollen und -Aufgaben.
Einschränkungen für das PCI-DSS v4.0-Richtlinien-Bundle
Name der Einschränkung | Beschreibung der Einschränkung | Kontroll-IDs |
---|---|---|
pci-dss-v4.0-require-apps-annotations | Erfordert, dass alle Anwendungen im Cluster eine network-controls/date -Annotation haben.
|
2.2.5 |
pci-dss-v4.0-require-av-daemonset | Erfordert das Vorhandensein eines Antiviren-DaemonSet .
|
5.2.1, 5.2.2, 5.2.3, 5.3.1, 5.3.2, 5.3.5 |
pci-dss-v4.0-require-binauthz | Erfordert den Zulassungs-Webhook der Binärautorisierung. | 2.2.1, 2.2.4, 6.2.3, 6.3.1, 6.3.2 |
pci-dss-v4.0-require-cloudarmor-backendconfig | Erzwingt die Google Cloud Armor-Konfiguration für BackendConfig -Ressourcen.
|
6.4.1, 6.4.2 |
pci-dss-v4.0-require-config-management | Erfordert, dass Config Management mit aktivierter Drift Prevention und mindestens einem RootSync -Objekt im Cluster ausgeführt wird.
|
1.2.8, 2.2.6, 5.3.5, 6.3.2, 6.5.1 |
pci-dss-v4.0-require-default-deny-network-policies | Erfordert, dass jeder im Cluster definierte Namespace eine standardmäßige Ablehnung NetworkPolicy für ausgehenden Traffic hat.
|
1.3.2, 1.4.4 |
pci-dss-v4.0-require-managed-by-label | Alle Anwendungen müssen ein gültiges app.kubernetes.io/managed-by -Label haben.
|
1.2.8, 2.2.6, 5.3.5, 6.3.2, 6.5.1 |
pci-dss-v4.0-require-namespace-network-policies | Erfordert, dass jeder im Cluster definierte Namespace eine NetworkPolicy hat.
|
1.2.5, 1.2.6, 1.4.1, 1.4.4 |
pci-dss-v4.0-require-peer-authentication-strict-mtls | Stellt sicher, dass PeerAuthentications keine strikte mTLS-Authentifizierung überschreiben kann. | 2.2.7, 4.2.1, 8.3.2 |
pci-dss-v4.0-require-valid-network-ranges | Schränkt die CIDR-Bereiche ein, die für eingehenden und ausgehenden Traffic verwendet werden können. | 1.3.1, 1.3.2, 1.4.2, 1.4.4 |
pci-dss-v4.0-resources-have-required-labels | Erfordert, dass alle Anwendungen ein bestimmtes Label enthalten, um die Firewallanforderungen zu erfüllen. | 1.2.7 |
pci-dss-v4.0-restrict-cluster-admin-role | Schränkt die Verwendung der Rolle cluster-admin ein.
|
7.2.1, 7.2.2, 7.2.5, 8.2.4 |
pci-dss-v4.0-restrict-creation-with-default-serviceaccount | Schränkt das Erstellen von Ressourcen mit einem Standarddienstkonto ein. Hat keine Auswirkungen während der Prüfung. | 2.2.2 |
pci-dss-v4.0-restrict-default-namespace | Schränkt die Verwendung des Standard-Namespace durch Pods ein. | 2.2.3 |
pci-dss-v4.0-restrict-ingress | Schränkt die Erstellung von Ingress -Objekten ein.
|
1.3.1, 1.4.2, 1.4.4 |
pci-dss-v4.0-restrict-node-image | Sorgt für eine konsistente und korrekte Zeit auf Knoten, da nur Container-Optimized OS oder Ubuntu als Betriebssystem-Image zulässig ist. | 10.6.1, 10.6.2, 10.6.3 |
pci-dss-v4.0-restrict-pods-exec | Beschränkt die Verwendung von pods/exec in Roles und ClusterRoles .
|
8.6.1 |
pci-dss-v4.0-restrict-rbac-subjects | Schränkt die Verwendung von Namen in RBAC auf die zulässigen Werte ein. | 7.3.2, 8.2.1, 8.2.2, 8.2.4 |
pci-dss-v4.0-restrict-role-wildcards | Beschränkt die Verwendung von Platzhaltern in Roles und ClusterRoles .
|
7.3.3, 8.2.4 |
pci-dss-v4.0-restrict-storageclass | Beschränkt StorageClass auf eine Liste von StorageClass , die standardmäßig verschlüsselt.
|
3.3.2, 3.3.3 |
Hinweise
- Installieren und initialisieren Sie das Google Cloud CLI, das die in dieser Anleitung verwendeten Befehle
gcloud
undkubectl
enthält. Wenn Sie Cloud Shell verwenden, ist Google Cloud CLI vorinstalliert. - Installieren Sie Policy Controller v1.16.0 oder höher in Ihrem Cluster mit der Standardbibliothek mit Einschränkungsvorlagen. Sie müssen auch die Unterstützung für referenzielle Einschränkungen aktivieren, da dieses Bundle referenzielle Einschränkungen enthält.
Policy Controller für referenzielle Einschränkungen konfigurieren
Speichern Sie das folgende YAML-Manifest in einer Datei als
policycontroller-config.yaml
. Das Manifest konfiguriert Policy Controller so, dass bestimmte Arten von Objekten beobachtet werden.apiVersion: config.gatekeeper.sh/v1alpha1 kind: Config metadata: name: config namespace: "gatekeeper-system" spec: sync: syncOnly: - group: "networking.k8s.io" version: "v1" kind: "NetworkPolicy" - group: "admissionregistration.k8s.io" version: "v1" kind: "ValidatingWebhookConfiguration" - group: "storage.k8s.io" version: "v1" kind: "StorageClass"
Wenden Sie das
policycontroller-config.yaml
-Manifest an:kubectl apply -f policycontroller-config.yaml
Arbeitslast Ihres Clusters für PCI DSS v4.0 konfigurieren
- Alle Anwendungen (
ReplicaSet
,Deployment
,StatefulSet
,DaemonSet
) müssen einenetwork-controls/date
-Anmerkung mit dem SchemaYYYY-MM-DD
enthalten. - Eine Antivirenlösung ist erforderlich. Die Standardeinstellung ist das Vorhandensein eines
daemonset
namensclamav
in demclamav
Namespace
. Der Name und der Namespace vondaemonset
können jedoch an Ihre Implementierung in der Einschränkungpci-dss-v4.0-require-av-daemonset
angepasst werden. - Die Aktivierung und Konfiguration der Binärautorisierung ist in
pci-dss-v4.0-require-binauthz
erforderlich. - Alle
BackendConfig
müssen für CloudArmor konfiguriert sein. - Das Vorhandensein und Aktivieren von Config Sync ist erforderlich.
- Jeder
Namespace
, der im Cluster definiert ist, hat eine standardmäßige Ablehnungs-NetworkPolicy
für ausgehenden Traffic. Zulässige Ausnahmen können inpci-dss-v4.0-require-namespace-network-policies
spezifisch sein. - Die Verwendung von Config Sync für
configmanagement.gke.io
ist standardmäßig erforderlich, der zulässige Wertapp.kubernetes.io/managed-by
kann jedoch in der Einschränkungpci-dss-v4.0-enforce-managed-by-configmanagement-label
angepasst werden. - Jeder im Cluster definierte
Namespace
muss eineNetworkPolicy
haben. - Wenn Sie Cloud Service Mesh verwenden, muss ASM PeerAuthentication die strikte mTLS-
spec.mtls.mode: STRICT
verwenden. - Für Ingress und Express können nur zulässige IP-Bereiche verwendet werden, diese können in
pci-dss-v4.0-require-valid-network-ranges
angegeben werden. - Alle Anwendungen (
ReplicaSet
,Deployment
,StatefulSet
undDaemonSet
) müssen einepci-dss-firewall-audit label
mit dem Schemapci-dss-[0-9]{4}q[1-4]
enthalten. - Die Verwendung des
ClusterRole
von „cluster-admin“ ist nicht zulässig. - Ressourcen können nicht mit dem Standarddienstkonto erstellt werden.
- Der Standard-
Namespace
kann nicht für Pods verwendet werden. - Nur zulässige Ingress-Objekte (
Ingress
-,Gateway
- undService
-Typen vonNodePort
undLoadBalancer
) können erstellt werden. Diese können inpci-dss-v4.0-restrict-ingress
angegeben werden. - Alle Knoten müssen für eine konsistente Zeit Container-Optimized OS oder Ubuntu für das Image verwenden.
- Die Verwendung des Platzhalterzeichens oder der Berechtigung
pods/exec
inRoles
undClusterRoles
ist nicht zulässig. - Nur zulässige Subjekte können in RBAC-Bindungen verwendet werden. Ihre Domainnamen können in
pci-dss-v4.0-restrict-rbac-subjects
angegeben werden. - Die standardmäßige Verschlüsselung von
StorageClass
ist inpci-dss-v4.0-restrict-storageclass
erforderlich.
PCI-DSS v4.0-Richtlinien-Bundle prüfen
Mit Policy Controller können Sie Richtlinien für Ihren Kubernetes-Cluster erzwingen. Damit Sie Ihre Arbeitslasten und deren Compliance in Bezug auf die in der vorherigen Tabelle beschriebenen PCI-DSS-Richtlinien v4.0 testen können, können Sie diese Einschränkungen im „Audit”-Modus bereitstellen, um Verstöße aufzudecken und vor allem selbst eine Gelegenheit zu geben, um sie zu beheben, bevor Sie sie auf Ihrem Kubernetes-Cluster erzwingen.
Sie können diese Richtlinien mit kpt oder Config Sync festlegen, wobei spec.enforcementAction
auf dryrun
gesetzt ist.
kubectl
(Optional) Sehen Sie sich eine Vorschau der Richtlinieneinschränkungen mit kubectl an:
kubectl kustomize https://github.com/GoogleCloudPlatform/gke-policy-library.git/anthos-bundles/pci-dss-v4.0
Wenden Sie die Richtlinieneinschränkungen mit kubectl an:
kubectl apply -k https://github.com/GoogleCloudPlatform/gke-policy-library.git/anthos-bundles/pci-dss-v4.0
Die Ausgabe sieht so aus:
asmpeerauthnstrictmtls.constraints.gatekeeper.sh/pci-dss-v4.0-require-peer-authentication-strict-mtls created k8sblockallingress.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-ingress created k8sblockcreationwithdefaultserviceaccount.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-creation-with-default-serviceaccount created k8senforcecloudarmorbackendconfig.constraints.gatekeeper.sh/pci-dss-v4.0-require-cloudarmor-backendconfig created k8senforceconfigmanagement.constraints.gatekeeper.sh/pci-dss-v4.0-require-config-management created k8sprohibitrolewildcardaccess.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-role-wildcards created k8srequirebinauthz.constraints.gatekeeper.sh/pci-dss-v4.0-require-binauthz created k8srequirecosnodeimage.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-node-image created k8srequiredaemonsets.constraints.gatekeeper.sh/pci-dss-v4.0-require-av-daemonset created k8srequiredefaultdenyegresspolicy.constraints.gatekeeper.sh/pci-dss-v4.0-require-default-deny-network-policies created k8srequirenamespacenetworkpolicies.constraints.gatekeeper.sh/pci-dss-v4.0-require-namespace-network-policies created k8srequirevalidrangesfornetworks.constraints.gatekeeper.sh/pci-dss-v4.0-require-valid-network-ranges created k8srequiredannotations.constraints.gatekeeper.sh/pci-dss-v4.0-require-apps-annotations created k8srequiredlabels.constraints.gatekeeper.sh/pci-dss-v4.0-require-managed-by-label created k8srequiredlabels.constraints.gatekeeper.sh/pci-dss-v4.0-resources-have-required-labels created k8srestrictnamespaces.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-default-namespace created k8srestrictrbacsubjects.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-rbac-subjects created k8srestrictrolebindings.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-cluster-admin-role created k8srestrictrolerules.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-pods-exec created k8sstorageclass.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-storageclass created
Prüfen Sie, ob Richtlinieneinschränkungen installiert wurden, und prüfen Sie, ob im Cluster Verstöße vorliegen:
kubectl get constraints -l policycontroller.gke.io/bundleName=pci-dss-v4.0
Die Ausgabe sieht in etwa so aus:
NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS asmpeerauthnstrictmtls.constraints.gatekeeper.sh/pci-dss-v4.0-require-peer-authentication-strict-mtls dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8sblockallingress.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-ingress dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8sblockcreationwithdefaultserviceaccount.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-creation-with-default-serviceaccount dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8senforcecloudarmorbackendconfig.constraints.gatekeeper.sh/pci-dss-v4.0-require-cloudarmor-backendconfig dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8senforceconfigmanagement.constraints.gatekeeper.sh/pci-dss-v4.0-require-config-management dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8sprohibitrolewildcardaccess.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-role-wildcards dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8srequirebinauthz.constraints.gatekeeper.sh/pci-dss-v4.0-require-binauthz dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8srequirecosnodeimage.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-node-image dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8srequiredaemonsets.constraints.gatekeeper.sh/pci-dss-v4.0-require-av-daemonset dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8srequiredannotations.constraints.gatekeeper.sh/pci-dss-v4.0-require-apps-annotations dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8srequiredefaultdenyegresspolicy.constraints.gatekeeper.sh/pci-dss-v4.0-require-default-deny-network-policies dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8srequiredlabels.constraints.gatekeeper.sh/pci-dss-v4.0-require-managed-by-label dryrun 0 k8srequiredlabels.constraints.gatekeeper.sh/pci-dss-v4.0-resources-have-required-labels dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8srequirenamespacenetworkpolicies.constraints.gatekeeper.sh/pci-dss-v4.0-require-namespace-network-policies dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8srequirevalidrangesfornetworks.constraints.gatekeeper.sh/pci-dss-v4.0-require-valid-network-ranges dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8srestrictnamespaces.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-default-namespace dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8srestrictrbacsubjects.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-rbac-subjects dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8srestrictrolebindings.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-cluster-admin-role dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8srestrictrolerules.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-pods-exec dryrun 0 NAME ENFORCEMENT-ACTION TOTAL-VIOLATIONS k8sstorageclass.constraints.gatekeeper.sh/pci-dss-v4.0-restrict-storageclass dryrun 0
KPT
Installieren und richten Sie kpt ein. kpt wird in dieser Anleitung verwendet, um Kubernetes-Ressourcen anzupassen und bereitzustellen.
Laden Sie das PCI DSS v4.0-Richtlinien-Bundle von GitHub mit kpt herunter:
kpt pkg get https://github.com/GoogleCloudPlatform/gke-policy-library.git/anthos-bundles/pci-dss-v4.0
Führen Sie die kpt-Funktion
set-enforcement-action
aus, um die Erzwingungsaktion der Richtlinien aufdryrun
festzulegen:kpt fn eval pci-dss-v4.0 -i gcr.io/kpt-fn/set-enforcement-action:v0.1 \ -- enforcementAction=dryrun
Initialisieren Sie das Arbeitsverzeichnis mit kpt, wodurch eine Ressource erstellt wird, um Änderungen verfolgen zu können:
cd pci-dss-v4.0 kpt live init
Wenden Sie die Richtlinieneinschränkungen mit kpt an:
kpt live apply
Prüfen Sie, ob Richtlinieneinschränkungen installiert wurden, und prüfen Sie, ob im Cluster Verstöße vorliegen:
kpt live status --output table --poll-until current
Der Status
CURRENT
bestätigt die erfolgreiche Installation der Einschränkungen.
Config Sync
- Installieren und richten Sie kpt ein. kpt wird in dieser Anleitung verwendet, um Kubernetes-Ressourcen anzupassen und bereitzustellen.
Operatoren, die Config Sync zum Bereitstellen von Richtlinien für ihre Cluster verwenden, können die folgende Anleitung verwenden:
Wechseln Sie in das Synchronisierungsverzeichnis für Config Sync:
cd SYNC_ROOT_DIR
So erstellen Sie
resourcegroup.yaml
oder hängen es an.gitignore
an:echo resourcegroup.yaml >> .gitignore
Erstellen Sie ein dediziertes
policies
-Verzeichnis:mkdir -p policies
Laden Sie das PCI DSS v4.0-Richtlinien-Bundle von GitHub mit kpt herunter:
kpt pkg get https://github.com/GoogleCloudPlatform/gke-policy-library.git/anthos-bundles/pci-dss-v4.0 policies/pci-dss-v4.0
Führen Sie die kpt-Funktion
set-enforcement-action
aus, um die Erzwingungsaktion der Richtlinien aufdryrun
festzulegen:kpt fn eval policies/pci-dss-v4.0 -i gcr.io/kpt-fn/set-enforcement-action:v0.1 -- enforcementAction=dryrun
(Optional) Sehen Sie sich eine Vorschau der Richtlinieneinschränkungen an, die erstellt werden sollen:
kpt live init policies/pci-dss-v4.0 kpt live apply --dry-run policies/pci-dss-v4.0
Wenn Ihr Synchronisierungsverzeichnis für Config Sync Kustomize verwendet, fügen Sie
policies/pci-dss-v4.0
Ihrer Stamm-kustomization.yaml
hinzu. Andernfalls entfernen Sie die Dateipolicies/pci-dss-v4.0/kustomization.yaml
:rm SYNC_ROOT_DIR/policies/pci-dss-v4.0/kustomization.yaml
Übertragen Sie Änderungen per Push in das Config Sync-Repository:
git add SYNC_ROOT_DIR/policies/pci-dss-v4.0 git commit -m 'Adding PCI-DSS v4.0 policy audit enforcement' git push
Prüfen Sie den Status der Installation:
watch gcloud beta container fleet config-management status --project PROJECT_ID
Der Status
SYNCED
bestätigt die Installation der Richtlinien.
Richtlinienverstöße ansehen
Sobald die Richtlinieneinschränkungen im Prüfmodus installiert sind, können Verstöße im Cluster in der UI über das Policy Controller-Dashboard angezeigt werden.
Mit kubectl
können Sie auch Verstöße im Cluster mit dem folgenden Befehl aufrufen:
kubectl get constraint -l policycontroller.gke.io/bundleName=pci-dss-v4.0 -o json | jq -cC '.items[]| [.metadata.name,.status.totalViolations]'
Wenn Verstöße vorhanden sind, kann eine Liste der Nachrichten zu Verstößen pro Einschränkung angezeigt werden mit:
kubectl get constraint -l policycontroller.gke.io/bundleName=pci-dss-v4.0 -o json | jq -C '.items[]| select(.status.totalViolations>0)| [.metadata.name,.status.violations[]?]'
Erzwingungsaktion für das PCI-DSS v4.0-Richtlinien-Bundle ändern
Nachdem Sie die Richtlinienverstöße in Ihrem Cluster überprüft haben, können Sie den Erzwingungsmodus ändern, sodass der Zulassungs-Controller entweder den Modus warn
aktiviert oder sogar deny
verhindert, dass nicht konforme Ressourcen auf das Cluster angewendet werden.
kubectl
Verwenden Sie kubectl, um die Maßnahme der Richtlinien auf
warn
festzulegen:kubectl get constraint -l policycontroller.gke.io/bundleName=pci-dss-v4.0 -o name | xargs -I {} kubectl patch {} --type='json' -p='[{"op":"replace","path":"/spec/enforcementAction","value":"warn"}]'
Prüfen Sie, ob die Maßnahme für Richtlinieneinschränkungen aktualisiert wurde:
kubectl get constraint -l policycontroller.gke.io/bundleName=pci-dss-v4.0
KPT
Führen Sie die kpt-Funktion
set-enforcement-action
aus, um die Maßnahme der Richtlinien aufwarn
festzulegen:kpt fn eval -i gcr.io/kpt-fn/set-enforcement-action:v0.1 -- enforcementAction=warn
Wenden Sie die Richtlinieneinschränkungen an:
kpt live apply
Config Sync
Operatoren, die Config Sync zum Bereitstellen von Richtlinien für ihre Cluster verwenden, können die folgende Anleitung verwenden:
Wechseln Sie in das Synchronisierungsverzeichnis für Config Sync:
cd SYNC_ROOT_DIR
Führen Sie die kpt-Funktion
set-enforcement-action
aus, um die Erzwingungsaktion der Richtlinien aufwarn
festzulegen:kpt fn eval policies/pci-dss-v4.0 -i gcr.io/kpt-fn/set-enforcement-action:v0.1 -- enforcementAction=warn
Übertragen Sie Änderungen per Push in das Config Sync-Repository:
git add SYNC_ROOT_DIR/policies/pci-dss-v4.0 git commit -m 'Adding PCI-DSS v4.0 policy bundle warn enforcement' git push
Prüfen Sie den Status der Installation:
gcloud alpha anthos config sync repo list --project PROJECT_ID
Ihr Repository, das in der Spalte
SYNCED
angezeigt wird, bestätigt die Installation der Richtlinien.
Richtlinienerzwingung testen
Erstellen Sie mit dem folgenden Befehl eine nicht konforme Ressource im Cluster:
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: Pod
metadata:
namespace: default
name: wp-non-compliant
labels:
app: wordpress
spec:
containers:
- image: wordpress
name: wordpress
ports:
- containerPort: 80
name: wordpress
EOF
Der Admission-Controller sollte eine Warnung ausgeben, in der die Richtlinienverstöße aufgeführt sind, gegen die diese Ressource verstößt, wie im folgenden Beispiel gezeigt:
Warning: [pci-dss-v4.0-restrict-default-namespace] <default> namespace is restricted pod/wp-non-compliant created
PCI-DSS v4.0-Richtlinien-Bundle entfernen
Bei Bedarf kann das PCI-DSS v4.0-Richtlinien-Bundle aus dem Cluster entfernt werden.
kubectl
Verwenden Sie kubectl, um die Richtlinien zu entfernen:
kubectl delete constraint -l policycontroller.gke.io/bundleName=pci-dss-v4.0
KPT
Entfernen Sie die Richtlinien:
kpt live destroy
Config Sync
Operatoren, die Config Sync zum Bereitstellen von Richtlinien für ihre Cluster verwenden, können die folgende Anleitung verwenden:
Übertragen Sie Änderungen per Push in das Config Sync-Repository:
git rm -r SYNC_ROOT_DIR/policies/pci-dss-v4.0 git commit -m 'Removing PCI-DSS v4.0 policies' git push
Prüfen Sie den Status:
gcloud alpha anthos config sync repo list --project PROJECT_ID
Ihr Repository, das in der Spalte
SYNCED
angezeigt wird, bestätigt das Entfernen der Richtlinien.