העברה מ-reCAPTCHA Classic

במאמר הזה מוסבר איך להעביר מפתח אתר פעיל מגרסה קלאסית של reCAPTCHA ל-reCAPTCHA בGoogle Cloud פרויקט. אפשר להעביר את מפתח האתר באמצעות מסוף Admin של reCAPTCHA (מומלץ) או באמצעות מסוף Google Cloud . תהליך ההעברה נמשך 5-10 דקות ולא דורש שינויים בקוד.

אם אתם מנהלים את המפתחות במסוף Admin של reCAPTCHA, אתם משתמשים ב-reCAPTCHA Classic. התכונות החדשות ביותר של reCAPTCHA זמינות רק למפתחות אתר שמנוהלים ב Google Cloud פרויקט. מידע נוסף על התכונות הזמינות מופיע במאמר השוואה בין רמות השירות של reCAPTCHA.

אחרי שתשלימו את תהליך המיגרציה, יתרחשו השינויים הבאים:

  • מפתחות האתר שלכם זמינים ב Google Cloud פרויקט בלי לבצע שינויים.
  • השילוב הקיים של reCAPTCHA ימשיך לפעול בלי שתצטרכו לבצע שינויים בקוד. אפשר לשמור על אותם כלים להטמעה בדף האינטרנט ועל אותן קריאות לשרת הקצה העורפי. עם זאת, כדי לגשת לתכונות כמו הגנה על החשבון או הגנה על הסיסמה, צריך לשנות את המדידה של דף האינטרנט ואת הקריאות לקצה העורפי. מידע נוסף זמין במאמר שימוש בתכונות reCAPTCHA אחרי ההעברה.
  • תחויבו אם תחרגו מהמכסה החודשית של reCAPTCHA בחינם, שהיא 10,000 הערכות בחודש. מידע נוסף זמין במאמר בנושא פרטי החיוב.

מעבר באמצעות מסוף Admin של reCAPTCHA

  1. נכנסים למסוף Admin של reCAPTCHA.

    כניסה למסוף Admin של reCAPTCHA

  2. בוחרים את הפרויקט שאליו רוצים להעביר את המפתחות.

  3. בוחרים את המפתחות שרוצים להעביר.

  4. לוחצים על שליחה.

המסוף Google Cloud ייפתח עם הפרויקט והמפתחות שהועברו.

העברה באמצעות מסוף Google Cloud

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

  1. בדף לבחירת הפרויקט במסוף Google Cloud , בוחרים פרויקט ב- Google Cloud או יוצרים אותו.

    תפקידים שנדרשים כדי לבחור או ליצור פרויקט

    • Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
    • יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (יצירת פרויקטים) (roles/resourcemanager.projectCreator), שכולל את ההרשאה resourcemanager.projects.create. איך מקצים תפקידים

    כניסה לדף לבחירת הפרויקט

  2. מוודאים שהחיוב מופעל בפרויקט Google Cloud .

    כדי להעביר את reCAPTCHA, צריך לקשר את החיוב ולהפעיל אותו בפרויקט. אפשר להפעיל את החיוב באמצעות כרטיס אשראי או מזהה חיוב של פרויקט קיים Google Cloud . אם אתם צריכים עזרה בנושא חיוב, אתם יכולים לפנות אל התמיכה בנושאי חיוב ב-Cloud.

  3. כדי להריץ את ה-CLI של gcloud מחוץ למסוף Google Cloud , צריך להתקין ולהפעיל את ה-CLI של gcloud. הוראות מפורטות זמינות במאמר בנושא

    התקינו את ה-CLI של Google Cloud. אחר כך, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:

    gcloud init

    אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

הפעלת reCAPTCHA Enterprise API

כל רמות השירות של reCAPTCHA‏ (Essentials,‏ Premium ו-Enterprise) פועלות על reCAPTCHA Enterprise API.

המסוף

  1. במסוף Google Cloud , נכנסים לדף reCAPTCHA Enterprise API.

    מעבר אל reCAPTCHA Enterprise API

  2. מוודאים ששם הפרויקט מופיע בבורר הפרויקטים בחלק העליון של הדף.

    אם שם הפרויקט לא מופיע, לוחצים על בורר הפרויקטים ובוחרים את הפרויקט.

  3. לוחצים על Enable.

gcloud

  1. במסוף Google Cloud , מפעילים את Cloud Shell.

    הפעלת Cloud Shell

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

  2. כדי להגדיר את הפרויקט Google Cloud בסשן של gcloud, מריצים את הפקודה gcloud config set project. מחליפים את PROJECT_ID במזהה הפרויקט ב- Google Cloud .
           gcloud config set project PROJECT_ID
           
  3. כדי להפעיל את reCAPTCHA Enterprise API, מריצים את הפקודה gcloud services enable:
             gcloud services enable recaptchaenterprise.googleapis.com
           
  4. כדי לוודא ש-reCAPTCHA Enterprise API מופעל, מריצים את הפקודה gcloud services list:
             gcloud services list --enabled
           

    מוודאים ש-reCAPTCHA Enterprise API מופיע ברשימת ממשקי ה-API המופעלים.

מעבר ל-reCAPTCHA

כדי להעביר את הגרסה הקלאסית של reCAPTCHA ל-reCAPTCHA, בוחרים מפתח אתר פעיל במסוף reCAPTCHA Admin ומעבירים את מפתח האתר. אפשר להעביר מפתח אתר פעיל אחד או יותר. עם זאת, אפשר להעביר רק מפתח אתר אחד בכל פעם.

כדי להריץ את תהליך ההעברה, צריך חשבון משתמש ב-reCAPTCHA שעומד בדרישות הבאות:

  • במסוף Admin של reCAPTCHA, חשבון המשתמש מופיע כבעלים של מפתח האתר שרוצים להעביר.
  • לחשבון המשתמש יש אחד מהתפקידים הבאים ב-IAM עבור הפרויקט שבו מופעל reCAPTCHA Enterprise API:
      Google Cloud
    • בעלי הפרויקט (roles/owner)
    • עריכת פרויקטים (roles/editor)
    • אדמין של reCAPTCHA‏ (roles/recaptchaenterprise.admin)
    אם לא הוקצה לחשבון המשתמש שלכם אחד מהתפקידים האלה, בקשו מהאדמין להקצות את התפקיד או פעלו לפי ההוראות במאמר הענקה, שינוי וביטול הגישה.
  1. מעבירים את מפתח האתר באמצעות מסוף Google Cloud , Google Cloud CLI או reCAPTCHA Enterprise API.

    העברת מפתח האתר לא משפיעה על המפתח או על נקודות הקצה של ה-API, אלא מוסיפה את המפתח לרישיון הארגוני.

    מסוף Google Cloud

    1. נכנסים לדף reCAPTCHA במסוף Google Cloud .

      מעבר אל reCAPTCHA

    2. מוודאים ששם הפרויקט מופיע בבורר המשאבים שבראש הדף. אם שם הפרויקט לא מופיע, לוחצים על בורר המשאבים ובוחרים את הפרויקט.

    3. לוחצים על הכרטיסייה Keys.

    4. בקטע Classic keys, מאתרים את המפתח שרוצים להעביר ולוחצים על Upgrade key.

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

    ‫CLI של gcloud

    1. כדי להגדיר אימות, מריצים את הפקודה הבאה של gcloud:

      gcloud auth login
      

      מתחברים לחשבון המשתמש ב-reCAPTCHA שהוא הבעלים של מפתח האתר שנבחר, ושיש לו אחד מהתפקידים הבאים: בעלים של הפרויקט, עורך של הפרויקט או אדמין של reCAPTCHA Enterprise.

    2. בוחרים ומעתיקים מפתח אתר פעיל שבו השתמשתם כדי לשלב reCAPTCHA בדפי האינטרנט:

      1. נכנסים למסוף Admin של reCAPTCHA ולוחצים על .
      2. בוחרים מפתח אתר. מפתחות האתר הבאים של reCAPTCHA נתמכים לצורך העברה: תיבת סימון של reCAPTCHA גרסה 2, reCAPTCHA גרסה 2 Invisible ו-reCAPTCHA גרסה 3.

      3. כדי להעתיק את מפתח האתר, לוחצים על העתקת מפתח האתר.

    3. מעבירים את מפתח האתר.

      משתמשים בפקודה gcloud recaptcha keys migrate כמו בדוגמה הבאה:

       gcloud recaptcha keys migrate SITE_KEY --project PROJECT-ID
      

      מספקים את הערכים הבאים:

      • SITE_KEY: מפתח האתר הפעיל שהעתקתם ממסוף Admin של reCAPTCHA.
      • PROJECT-ID: המזהה של Google Cloud הפרויקט שבו מופעל reCAPTCHA Enterprise API.

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

    1. בוחרים ומעתיקים מפתח אתר פעיל שבו השתמשתם כדי לשלב reCAPTCHA בדפי האינטרנט:

      1. נכנסים למסוף Admin של reCAPTCHA ולוחצים על .
      2. בוחרים מפתח אתר. מפתחות האתר הבאים של reCAPTCHA נתמכים לצורך העברה: תיבת סימון של reCAPTCHA גרסה 2, reCAPTCHA גרסה 2 Invisible ו-reCAPTCHA גרסה 3.

      3. כדי להעתיק את מפתח האתר, לוחצים על העתקת מפתח האתר.

    2. מעבירים את מפתח האתר.

      לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

      • PROJECT_ID: המזהה של Google Cloud הפרויקט שבו מופעל reCAPTCHA API.
      • SITE_KEY: מפתח האתר הפעיל שהעתקתם ממסוף Admin של reCAPTCHA.

      ה-method של ה-HTTP וכתובת ה-URL:

      POST https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys/SITE_KEY:migrate

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

      curl

      מריצים את הפקודה הבאה:

      curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json; charset=utf-8" \
      -d "" \
      "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys/SITE_KEY:migrate"

      PowerShell

      מריצים את הפקודה הבאה:

      $cred = gcloud auth print-access-token
      $headers = @{ "Authorization" = "Bearer $cred" }

      Invoke-WebRequest `
      -Method POST `
      -Headers $headers `
      -Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys/SITE_KEY:migrate" | Select-Object -Expand Content

      אתם אמורים לקבל תגובת JSON שדומה לזו:

      {
        "name": "projects/PROJECT-ID/keys/6Ldqgs0UAAAAAIn4k7YxEB-LwEh5S9-Gv6IIWB8m",
        "displayName": "My site key",
        "webSettings": {
          "allowAllDomains": false,
          "allowedDomains": [
            recaptcha.net
          ],
          "allowAmpTraffic": false,
          "integrationType": "SCORE",
          "challengeSecurityPreference": "CHALLENGE_SECURITY_PREFERENCE_UNSPECIFIED"
        }
      }
      

  2. כדי לוודא שמפתח האתר הועבר, מבצעים את הפעולות הבאות:

    מסוף Google Cloud

    עוברים לדף reCAPTCHA, בוחרים בכרטיסייה מפתחות ומחפשים את מפתח האתר שהועבר בקטע מפתחות reCAPTCHA.

    מעבר אל reCAPTCHA

    ‫CLI של gcloud

    מריצים את הפקודה gcloud recaptcha keys list ומחפשים את מפתח האתר שהועבר ברשימת המפתחות.

אחרי המעבר ל-reCAPTCHA, אפשר להמשיך להשתמש ב-method‏ siteverify כדי להעריך את טוקן התשובה של משתמש ב-reCAPTCHA. מידע על התשובה מופיע בקטע תשובה של siteverify method.

אחרי שמבצעים מיגרציה של מפתח אתר ל-reCAPTCHA, מתחילים לתעד את השימוש בו כדי להציג אותו ב- Google Cloud Console תוך שעה אחת, כולל לוחות בקרה שקשורים לשימוש ולניקוד. בדרך כלל, השימוש לפני ההעברה לא מוצג במסוף Google Cloud .

אפשר לבטל את תפקיד ה-IAM‏ reCAPTCHA Enterprise Admin‏ (roles/recaptchaenterprise.admin) בחשבון המשתמש שלכם ב-reCAPTCHA. אפשר לבקש מהאדמין לבטל את הגישה או לפעול לפי ההוראות במאמר הענקה, שינוי וביטול גישה.

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