שימוש באימות רציף מדור קודם

הדף הזה מיועד למשתמשים באימות רציף מדור קודם (CV מדור קודם) (הוצא משימוש).

תיקוף רציף מדור קודם הוא תכונה של Binary Authorization שבודקת מעת לעת תמונות של קונטיינרים שמשויכות ל-Pods פעילים, כדי לוודא שהן ממשיכות לעמוד בדרישות של מדיניות הפרויקט היחידה של Binary Authorization. ממצאים מיומני CV בגרסה הקודמת של Meet נרשמים ב-Cloud Logging.

הגרסה הקודמת של CV לא מסיימת הפעלה של Pods.

מגבלות

לגרסה הקודמת של CV יש את המגבלות הבאות:

  • הגרסה הקודמת של CV תומכת רק ב-Pods שנפרסו ב-Google Kubernetes Engine ‏ (GKE).
  • הגרסה הקודמת של CV לא תומכת במדיניות של אישור בינארי שמציינת כללים ספציפיים לגבי זהויות שירות של Cloud Service Mesh, חשבונות שירות של Kubernetes או מרחבי שמות של Kubernetes.

לפני שמתחילים

  1. מוודאים שהגדרתם אימות בינארי ל-Google Kubernetes Engine בפרויקט. אירועים של תאימות למדיניות של יומני CV מדור קודם מ-Pods בכל האשכולות בפרויקט.

  2. מוודאים ש-CLI של gcloud מעודכן לגרסה האחרונה

ההרשאות הנדרשות

תפקידים בניהול זהויות והרשאות גישה (IAM) כוללים הרשאות ואפשר להקצות אותם למשתמשים, לקבוצות ולחשבונות שירות. התפקידים הבאים כוללים את ההרשאות שמופיעות ברשימה עבור CV:

שם התפקיד הרשאות CV מדור קודם תיאור
roles/binaryauthorization.policyEditor binaryauthorization.continuousValidationConfig.update הפעלה והשבתה של ערכי מהימנות.

כדי להגדיר את הרשאות ה-IAM הנדרשות, מריצים את הפקודות הבאות:

PROJECT_NUMBER=$(gcloud projects list \
  --filter="projectId:ATTESTATION_PROJECT_ID" \
  --format="value(PROJECT_NUMBER)")
SERVICE_ACCOUNT="service-$PROJECT_NUMBER@gcp-sa-binaryauthorization.iam.gserviceaccount.com"
gcloud projects add-iam-policy-binding ATTESTATION_PROJECT_ID \
    --member="serviceAccount:$SERVICE_ACCOUNT" \
    --role='roles/containeranalysis.occurrences.viewer'

הפעלת קורות חיים מדור קודם

המסוף

כדי להפעיל את הגרסה הקודמת של CV באמצעות מסוף Google Cloud :

  1. במסוףGoogle Cloud , עוברים לדף Policy של Binary Authorization.

    מעבר למדיניות Binary Authorization

  2. לוחצים על הכרטיסייה מדיניות.

  3. לוחצים על עריכת המדיניות.

  4. מרחיבים את הקטע הגדרות נוספות לפריסות של GKE ו-Anthos.

  5. מסמנים את תיבת הסימון הפעלת אימות רציף.

  6. לוחצים על שמירת המדיניות.

‫API בארכיטקטורת REST

כדי להפעיל את הגרסה הקודמת של CV באמצעות REST API, מבצעים את הפעולות הבאות:

  1. שומרים את מזהה הפרויקט:

    DEPLOYER_PROJECT_ID=DEPLOYER_PROJECT_ID
    

    מחליפים את DEPLOYER_PROJECT_ID במזהה הפרויקט שבו מריצים את GKE.

  2. קבלת טוקן OAuth עבור Google Cloud.

    BEARER_TOKEN=$(gcloud auth print-access-token)
    

    הטוקן תקף לזמן קצר בלבד.

  3. הפעלת קורות חיים מדור קודם:

    curl "https://binaryauthorization.googleapis.com/v1alpha2/projects/${DEPLOYER_PROJECT_ID}/continuousValidationConfig" -X PUT -H "authorization: Bearer $BEARER_TOKEN" -H "Content-Type: application/json" --data '{"enforcementPolicyConfig": {"enabled": "true"}}'
    

מעקב ההמרות מדור קודם מוגדר עכשיו לתיעוד אירועים.

הרשומה ביומן של Logging דומה לדוגמה הבאה:

{
"insertId": "6054e143-0000-2562-aa64-883d24f57e70",
"jsonPayload": {
  "@type": "type.googleapis.com/google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent",
  "podEvent": {
    "images": [
      {
        "description": "Image <var>IMAGE_NAME@IMAGE_DIGEST</var> denied by
        attestor projects/<var>ATTESTOR_PROJECT_ID</var>/attestors/<var>ATTESTOR_NAME</var>:
        No attestations found that were valid and signed by a key trusted by
        the attestor",
        "image": "<var>IMAGE_NAME@IMAGE_DIGEST</var>",
        "result": "DENY"
      }
    ],
    "verdict": "VIOLATES_POLICY",
    "deployTime": "2021-03-19T17:00:08Z",
    "pod": "<var>POD_NAME</var>"
  }