הגבלת סוגי היעדים

כל משימת cron שנוצרת באמצעות Cloud Scheduler נשלחת ליעד לפי לוח זמנים שצוין, שבו מתבצעת העבודה של המשימה. כברירת מחדל, כל סוגי היעדים של המשרות מותרים. כדי להגביל את סוג היעד שאפשר ליצור בארגון – HTTP,‏ Pub/Sub או HTTP ב-App Engine – אפשר להחיל את האילוץ cloudscheduler.allowedTargetTypes כשמגדירים מדיניות ארגון.

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות לניהול מדיניות הארגון, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM‏ Organization Policy Administrator (אדמין של מדיניות הארגון) ‏(roles/orgpolicy.policyAdmin) בארגון. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

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

החלת האילוץ

אפשר להשתמש במסוף Google Cloud או ב-Google Cloud CLI כדי להחיל את האילוץ על מדיניות הארגון.

המסוף

  1. במסוף Google Cloud , נכנסים לדף IAM & Admin > מדיניות הארגון.

    מעבר למדיניות הארגון

  2. בסרגל הכלים של המסוף, משתמשים בכלי לבחירת משאבים כדי לבחור את הפרויקט, התיקייה או הארגון שרוצים לראות את מדיניות הארגון שלהם.

    מוצגת רשימה של אילוצים של מדיניות הארגון שזמינים למשאב הזה.

  3. מסננים את הרשימה לפי שם האילוץ Allowed target types for jobs (סוגי טירגוט מותרים למשימות).

  4. בשורה של האילוץ, לוחצים על פעולות > עריכת המדיניות.

  5. בדף 'עריכת מדיניות', בוחרים באפשרות במקום המדיניות של המשאב הראשי.

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

  6. בקטע כללים, לוחצים על הוספת כלל.

    1. ברשימה ערכי מדיניות, בוחרים באפשרות בהתאמה אישית.

    2. ברשימה סוג המדיניות, בוחרים באפשרות הרשאה.

    3. מוסיפים ערך מותאם אישית של APPENGINE,‏ HTTP או PUBSUB.

    4. כדי להוסיף כמה סוגי משרות, לוחצים על הוספת ערך .

    5. לוחצים על סיום.

  7. כדי לאכוף את המדיניות, לוחצים על הגדרת מדיניות.

gcloud

  1. כדי לראות את ההגדרה הקיימת של האילוץ, משתמשים בפקודה gcloud org-policies describe:

    gcloud org-policies describe constraints/cloudscheduler.allowedTargetTypes \
        --RESOURCE_TYPE_FLAG=RESOURCE_ID
    

    מחליפים את מה שכתוב בשדות הבאים:

    • RESOURCE_TYPE_FLAG: בהתאם למיקום בהיררכיה שאליו מצורפת המדיניות, הערך יכול להיות folder,‏ organization או project.
    • RESOURCE_ID: מזהה התיקייה, הארגון או הפרויקט הרלוונטיים.

    הפלט אמור להיראות כך:

    etag: CJTvgc0GENDs+50B-
    name: projects/PROJECT_NUMBER/policies/cloudscheduler.allowedTargetTypes
    spec:
      etag: CJTvgc0GENDs+50B
      inheritFromParent: true
      rules:
      - values:
          allowedValues:
          - PUBSUB
      updateTime: '2026-02-26T16:40:52.331282Z'
    
  2. מגדירים את המדיניות במשאב באמצעות הפקודה gcloud org-policies set-policy. הפעולה הזו מחליפה את האילוץ שמצורף למשאב.

    1. יוצרים קובץ זמני, /tmp/policy.yaml, כדי לאחסן את המדיניות. לדוגמה:

      name: projects/PROJECT_NUMBER/policies/cloudscheduler.allowedTargetTypes
      spec:
        rules:
        - values:
            allowedValues:
            - TARGET_TYPE
      

      מחליפים את מה שכתוב בשדות הבאים:

      • PROJECT_NUMBER: מספר הפרויקט ב- Google Cloud .
      • TARGET_TYPE: סוג היעד של המשרה, שיכול להיות APPENGINE, ‏ HTTP או PUBSUB.
    2. מריצים את הפקודה set-policy:

      gcloud org-policies set-policy /tmp/policy.yaml
      
  3. אפשר לאפס את האילוץ לברירת המחדל באמצעות הפקודה gcloud org-policies reset:

    gcloud org-policies reset constraints/cloudscheduler.allowedTargetTypes \
        --RESOURCE_TYPE_FLAG=RESOURCE_ID
    

יכול להיות שיחלפו עד 15 דקות עד שהשינויים במדיניות הארגון יחולו באופן מלא.

המאמרים הבאים