Policy Controller כולל ספרייה של תבניות הגבלות שמוגדרות כברירת מחדל, שאפשר להשתמש בהן עם חבילת PCI-DSS v4.0 כדי להעריך את התאימות של משאבי האשכול לכמה היבטים של תקן אבטחת הנתונים בתעשיית כרטיסי התשלום (PCI-DSS) v4.0.
בדף הזה מוסבר איך להחיל חבילת מדיניות באופן ידני. אפשרות אחרת היא להחיל חבילות מדיניות ישירות.
הדף הזה מיועד לאדמינים ולמפעילים בתחום ה-IT שרוצים לוודא שכל המשאבים שפועלים בפלטפורמת הענן עומדים בדרישות התאימות של הארגון. כדי לעשות את זה, הם יכולים לספק ולתחזק אוטומציה לביקורת או לאכיפה. מידע נוסף על תפקידים נפוצים ועל משימות לדוגמה שאנחנו מתייחסים אליהן בתוכן של Google Cloud , זמין במאמר תפקידים נפוצים של משתמשים ומשימות ב-GKE.
מגבלות של חבילת מדיניות PCI-DSS v4.0
| שם המגבלה | תיאור המגבלה | מזהי בקרה |
|---|---|---|
| pci-dss-v4.0-require-apps-annotations | נדרש שכל האפליקציות באשכול יכללו הערה network-controls/date.
|
2.2.5 |
| pci-dss-v4.0-require-av-daemonset | נדרשת נוכחות של תוכנת אנטי-וירוס 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 | נדרש Binary Authorization Validating Admission Webhook. | 2.2.1, 2.2.4, 6.2.3, 6.3.1, 6.3.2 |
| pci-dss-v4.0-require-cloudarmor-backendconfig | אכיפת התצורה של Google Cloud Armor על משאבי BackendConfig.
|
6.4.1, 6.4.2 |
| pci-dss-v4.0-require-config-management | נדרש להפעיל את ניהול התצורה עם האפשרות 'מניעת סחף' ועם אובייקט RootSync אחד לפחות באשכול.
|
1.2.8, 2.2.6, 5.3.5, 6.3.2, 6.5.1 |
| pci-dss-v4.0-require-default-deny-network-policies | הדרישה היא שלכל מרחב שמות שמוגדר באשכול תהיה מדיניות ברירת מחדל של דחיית NetworkPolicy ליציאה.
|
1.3.2, 1.4.4 |
| pci-dss-v4.0-require-managed-by-label | כל האפליקציות צריכות להיות מסומנות בתווית app.kubernetes.io/managed-by תקינה.
|
1.2.8, 2.2.6, 5.3.5, 6.3.2, 6.5.1 |
| pci-dss-v4.0-require-namespace-network-policies | נדרש שכל Namespace שמוגדר באשכול יכלול NetworkPolicy.
|
1.2.5, 1.2.6, 1.4.1, 1.4.4 |
| pci-dss-v4.0-require-peer-authentication-strict-mtls | הוא מבטיח שאימותים בין עמיתים לא יכולים לדרוס mTLS מחמיר. | 2.2.7, 4.2.1, 8.3.2 |
| pci-dss-v4.0-require-valid-network-ranges | הגבלת טווחי CIDR שמותר להשתמש בהם לתעבורת כניסה ויציאה. | 1.3.1, 1.3.2, 1.4.2, 1.4.4 |
| pci-dss-v4.0-resources-have-required-labels | כל האפליקציות צריכות להכיל תווית שצוינה כדי לעמוד בדרישות של חומת האש. | 1.2.7 |
| pci-dss-v4.0-restrict-cluster-admin-role | הגבלת השימוש בתפקיד cluster-admin.
|
7.2.1, 7.2.2, 7.2.5, 8.2.4 |
| pci-dss-v4.0-restrict-creation-with-default-serviceaccount | מגביל את יצירת המשאבים באמצעות חשבון שירות שמוגדר כברירת מחדל. אין השפעה במהלך ביקורת. | 2.2.2 |
| pci-dss-v4.0-restrict-default-namespace | הגבלת השימוש בתרמילים במרחב השמות שמוגדר כברירת מחדל. | 2.2.3 |
| pci-dss-v4.0-restrict-ingress | ההגדרה הזו מגבילה את היצירה של Ingress אובייקטים.
|
1.3.1, 1.4.2, 1.4.4 |
| pci-dss-v4.0-restrict-node-image | היא מבטיחה שהשעה בצמתים תהיה עקבית ונכונה, כי היא מאפשרת להשתמש רק במערכת הפעלה שמותאמת לקונטיינרים או ב-Ubuntu כקובץ אימג' של מערכת ההפעלה. | 10.6.1, 10.6.2, 10.6.3 |
| pci-dss-v4.0-restrict-pods-exec | הגבלת השימוש ב-pods/exec ב-Roles וב-ClusterRoles.
|
8.6.1 |
| pci-dss-v4.0-restrict-rbac-subjects | מגביל את השימוש בשמות בנושאי RBAC לערכים מותרים. | 7.3.2, 8.2.1, 8.2.2, 8.2.4 |
| pci-dss-v4.0-restrict-role-wildcards | מגבילה את השימוש בתווים כלליים לחיפוש ב-Roles וב-ClusterRoles.
|
7.3.3, 8.2.4 |
| pci-dss-v4.0-restrict-storageclass | ההגדרה מגבילה את StorageClass לרשימה של StorageClass שמוצפנים כברירת מחדל.
|
3.3.2, 3.3.3 |
לפני שמתחילים
- מתקינים ומאתחלים את Google Cloud CLI, שמספק את הפקודות
gcloudו-kubectlשמשמשות בהוראות האלה. אם אתם משתמשים ב-Cloud Shell, Google Cloud CLI מותקן מראש. - מתקינים את Policy Controller בגרסה 1.16.0 ואילך באשכול עם ספריית ברירת המחדל של תבניות אילוץ. בנוסף, צריך להפעיל תמיכה באילוצים שלמותיים כי החבילה הזו מכילה אילוצים כאלה.
הגדרת Policy Controller לאילוצים של הפניות
שומרים את מניפסט ה-YAML הבא בקובץ בשם
policycontroller-config.yaml. קובץ המניפסט מגדיר את Policy Controller כך שיעקוב אחרי סוגים ספציפיים של אובייקטים.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"החלת המניפסט
policycontroller-config.yaml:kubectl apply -f policycontroller-config.yaml
הגדרת עומס העבודה של האשכול בהתאם לתקן PCI-DSS v4.0
- כל האפליקציות (
ReplicaSet, Deployment, StatefulSet, DaemonSet) צריכות לכלול הערהnetwork-controls/dateעם הסכימה שלYYYY-MM-DD. - נדרש פתרון אנטי-וירוס. ברירת המחדל היא הנוכחות של
daemonsetבשםclamavב-clamavNamespace, אבל אפשר להתאים אישית את השם ואת מרחב השמות שלdaemonsetבהגדרת האילוץpci-dss-v4.0-require-av-daemonset. - צריך להפעיל ולהגדיר את Binary Authorization ב-
pci-dss-v4.0-require-binauthz. - צריך להגדיר את כל
BackendConfigל-CloudArmor. - נדרשת נוכחות והפעלה של סנכרון תצורות.
- לכל
Namespaceשמוגדר באשכול יש דחייהNetworkPolicyכברירת מחדל לתעבורת נתונים יוצאת (egress), ואפשר לציין חריגים מותרים ב-pci-dss-v4.0-require-namespace-network-policies. - השימוש ב-סנכרון תצורות עבור
configmanagement.gke.ioנדרש כברירת מחדל, אבל אפשר להתאים אישית את הערך המותרapp.kubernetes.io/managed-byבאילוץpci-dss-v4.0-enforce-managed-by-configmanagement-label. - לכל
Namespaceשמוגדר באשכול צריך להיותNetworkPolicy. - אם משתמשים ב-Cloud Service Mesh, PeerAuthentication ב-ASM חייב להשתמש ב-mTLS מחמיר
spec.mtls.mode: STRICT. - אפשר להשתמש רק בטווחים מורשים של כתובות IP ל-Ingress ול-Express, ואפשר לציין אותם ב-
pci-dss-v4.0-require-valid-network-ranges. - כל האפליקציות (
ReplicaSet,Deployment,StatefulSetו-DaemonSet) חייבות לכלולpci-dss-firewall-audit labelעם הסכימהpci-dss-[0-9]{4}q[1-4]. - אסור להשתמש בהרשאת cluster-admin
ClusterRole. - אי אפשר ליצור משאבים באמצעות חשבון השירות שמוגדר כברירת מחדל.
- אי אפשר להשתמש ב-
Namespaceכברירת מחדל ל-pods. - אפשר ליצור רק אובייקטים מותרים של Ingress (סוגים
Ingress,Gatewayו-ServiceשלNodePortו-LoadBalancer). אפשר לציין אותם ב-pci-dss-v4.0-restrict-ingress. - כל הצמתים חייבים להשתמש ב-מערכת הפעלה שמותאמת לקונטיינרים או ב-Ubuntu בתור קובץ האימג' שלהם כדי לשמור על עקביות בזמן.
- אסור להשתמש בתו הכללי לחיפוש או בהרשאה
pods/execב-Rolesוב-ClusterRoles. - אפשר להשתמש רק בנושאים מורשים בכריכות RBAC, ואפשר לציין את שמות הדומיין ב-
pci-dss-v4.0-restrict-rbac-subjects. - חובה להשתמש בהצפנה כברירת מחדל
StorageClassב-pci-dss-v4.0-restrict-storageclass.
ביקורת של חבילת המדיניות PCI-DSS גרסה 4.0
בעזרת Policy Controller אפשר לאכוף מדיניות באשכול Kubernetes. כדי לבדוק את עומסי העבודה שלכם ואת התאימות שלהם למדיניות PCI-DSS v4.0 שמפורטת בטבלה הקודמת, אתם יכולים להטמיע את האילוצים האלה במצב 'ביקורת'. כך תוכלו לזהות הפרות, וחשוב מכך, לתקן אותן לפני האכיפה באשכול Kubernetes.
אפשר להחיל את כללי המדיניות האלה עם spec.enforcementAction שמוגדר ל-dryrun באמצעות kubectl, kpt או סנכרון תצורות.
kubectl
(אופציונלי) מציגים בתצוגה מקדימה את אילוצי המדיניות באמצעות kubectl:
kubectl kustomize https://github.com/GoogleCloudPlatform/gke-policy-library.git/anthos-bundles/pci-dss-v4.0
מחילים את אילוצי המדיניות באמצעות kubectl:
kubectl apply -k https://github.com/GoogleCloudPlatform/gke-policy-library.git/anthos-bundles/pci-dss-v4.0
הפלט שיתקבל:
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
מוודאים שאילוצי המדיניות הותקנו ובודקים אם יש הפרות בכל האשכול:
kubectl get constraints -l policycontroller.gke.io/bundleName=pci-dss-v4.0
הפלט אמור להיראות כך:
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
מתקינים ומגדירים את kpt. ההוראות האלה מתבססות על שימוש ב-kpt כדי להתאים אישית ולפרוס משאבי Kubernetes.
מורידים את חבילת המדיניות PCI-DSS v4.0 מ-GitHub באמצעות kpt:
kpt pkg get https://github.com/GoogleCloudPlatform/gke-policy-library.git/anthos-bundles/pci-dss-v4.0
מריצים את הפונקציה
set-enforcement-actionkpt כדי להגדיר את פעולת האכיפה של המדיניות לערךdryrun:kpt fn eval pci-dss-v4.0 -i gcr.io/kpt-fn/set-enforcement-action:v0.1 \ -- enforcementAction=dryrun
מאתחלים את ספריית העבודה באמצעות kpt, שיוצר משאב למעקב אחרי שינויים:
cd pci-dss-v4.0 kpt live init
מחילים את אילוצי המדיניות באמצעות kpt:
kpt live apply
מוודאים שאילוצי המדיניות הותקנו ובודקים אם יש הפרות בכל האשכול:
kpt live status --output table --poll-until current
הסטטוס
CURRENTמאשר שההתקנה של האילוצים בוצעה בהצלחה.
סנכרון תצורות
- מתקינים ומגדירים את kpt. ההוראות האלה מתבססות על שימוש ב-kpt כדי להתאים אישית ולפרוס משאבי Kubernetes.
מפעילים שמשתמשים ב-סנכרון תצורות כדי לפרוס מדיניות באשכולות שלהם יכולים להשתמש בהוראות הבאות:
עוברים לספריית הסנכרון של סנכרון תצורות:
cd SYNC_ROOT_DIR
כדי ליצור או להוסיף
.gitignoreעםresourcegroup.yaml:echo resourcegroup.yaml >> .gitignore
יוצרים ספרייה ייעודית של
policies:mkdir -p policies
מורידים את חבילת המדיניות PCI-DSS v4.0 מ-GitHub באמצעות kpt:
kpt pkg get https://github.com/GoogleCloudPlatform/gke-policy-library.git/anthos-bundles/pci-dss-v4.0 policies/pci-dss-v4.0
מריצים את הפונקציה
set-enforcement-actionkpt כדי להגדיר את פעולת האכיפה של המדיניות לערךdryrun:kpt fn eval policies/pci-dss-v4.0 -i gcr.io/kpt-fn/set-enforcement-action:v0.1 -- enforcementAction=dryrun
(אופציונלי) מציגים בתצוגה מקדימה את אילוצי המדיניות שייווצרו:
kpt live init policies/pci-dss-v4.0 kpt live apply --dry-run policies/pci-dss-v4.0
אם ספריית הסנכרון של סנכרון תצורות משתמשת ב-Kustomize, מוסיפים את
policies/pci-dss-v4.0ל-kustomization.yamlהבסיסי. אחרת, מסירים את הקובץpolicies/pci-dss-v4.0/kustomization.yaml:rm SYNC_ROOT_DIR/policies/pci-dss-v4.0/kustomization.yaml
דחיפת השינויים למאגר סנכרון תצורות:
git add SYNC_ROOT_DIR/policies/pci-dss-v4.0 git commit -m 'Adding PCI-DSS v4.0 policy audit enforcement' git push
מאמתים את סטטוס ההתקנה:
watch gcloud beta container fleet config-management status --project PROJECT_ID
הסטטוס
SYNCEDמאשר שהמדיניות הותקנה.
הצגת הפרות מדיניות
אחרי שמתקינים את מגבלות המדיניות במצב ביקורת, אפשר לראות את ההפרות באשכול בממשק המשתמש באמצעות לוח הבקרה של Policy Controller.
אפשר גם להשתמש בפקודה הבאה כדי לראות את ההפרות באשכול באמצעות kubectl:
kubectl get constraint -l policycontroller.gke.io/bundleName=pci-dss-v4.0 -o json | jq -cC '.items[]| [.metadata.name,.status.totalViolations]'
אם יש הפרות, אפשר לראות רשימה של הודעות ההפרה לכל אילוץ באמצעות הפקודה:
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[]?]'
שינוי פעולת האכיפה של חבילת המדיניות PCI-DSS v4.0
אחרי שבודקים את הפרות המדיניות באשכול, אפשר לשנות את מצב האכיפה כך שבקרת הכניסה תהיה warn מופעלת או אפילו deny תחסום את היישום של משאב שלא עומד בדרישות באשכול.
kubectl
משתמשים ב-kubectl כדי להגדיר את פעולת האכיפה של כללי המדיניות ל-
warn: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"}]'מוודאים שפעולת האכיפה של הגבלות המדיניות עודכנה:
kubectl get constraint -l policycontroller.gke.io/bundleName=pci-dss-v4.0
kpt
מריצים את הפונקציה
set-enforcement-actionkpt כדי להגדיר את פעולת האכיפה של המדיניות לערךwarn:kpt fn eval -i gcr.io/kpt-fn/set-enforcement-action:v0.1 -- enforcementAction=warn
החלת האילוצים של מדיניות הארגון:
kpt live apply
סנכרון תצורות
מפעילים שמשתמשים ב-סנכרון תצורות כדי לפרוס מדיניות באשכולות שלהם יכולים להשתמש בהוראות הבאות:
עוברים לספריית הסנכרון של סנכרון תצורות:
cd SYNC_ROOT_DIR
מריצים את הפונקציה
set-enforcement-actionkpt כדי להגדיר את פעולת האכיפה של המדיניות לערךwarn:kpt fn eval policies/pci-dss-v4.0 -i gcr.io/kpt-fn/set-enforcement-action:v0.1 -- enforcementAction=warn
דחיפת השינויים למאגר סנכרון תצורות:
git add SYNC_ROOT_DIR/policies/pci-dss-v4.0 git commit -m 'Adding PCI-DSS v4.0 policy bundle warn enforcement' git push
מאמתים את סטטוס ההתקנה:
nomos status
האשכול צריך להציג סטטוס של
SYNCEDעם המדיניות המותקנת.
בדיקת אכיפת המדיניות
יוצרים משאב לא תואם באשכול באמצעות הפקודה הבאה:
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
בקרת הכניסה צריכה להפיק אזהרה שמפרטת את הפרות המדיניות שמתרחשות במשאב הזה, כמו בדוגמה הבאה:
Warning: [pci-dss-v4.0-restrict-default-namespace] <default> namespace is restricted pod/wp-non-compliant created
הסרת חבילת מדיניות PCI-DSS v4.0
במקרה הצורך, אפשר להסיר את חבילת המדיניות PCI-DSS v4.0 מהאשכול.
kubectl
משתמשים ב-kubectl כדי להסיר את כללי המדיניות:
kubectl delete constraint -l policycontroller.gke.io/bundleName=pci-dss-v4.0
kpt
מסירים את כללי המדיניות:
kpt live destroy
סנכרון תצורות
מפעילים שמשתמשים ב-סנכרון תצורות כדי לפרוס מדיניות באשכולות שלהם יכולים להשתמש בהוראות הבאות:
דחיפת השינויים למאגר סנכרון תצורות:
git rm -r SYNC_ROOT_DIR/policies/pci-dss-v4.0 git commit -m 'Removing PCI-DSS v4.0 policies' git push
בודקים את הסטטוס:
nomos status
האשכול אמור להציג סטטוס של
SYNCEDעם המשאבים שהוסרו.