במאמר הזה מוסבר איך להעביר מפתח פעיל של אתר מ-reCAPTCHA Classic ל-reCAPTCHA בפרויקטGoogle Cloud . אפשר להעביר את מפתח האתר באמצעות מסוף reCAPTCHA לאדמינים (מומלץ) או באמצעות מסוף Google Cloud . תהליך ההעברה נמשך 5-10 דקות ולא דורש שינויים בקוד.
אם אתם מנהלים את המפתחות במסוף reCAPTCHA Admin, אתם משתמשים ב-reCAPTCHA Classic. התכונות האחרונות של reCAPTCHA זמינות רק למפתחות אתר שמנוהלים ב Google Cloud פרויקט. למידע נוסף על התכונות הזמינות, אפשר לעיין במאמר השוואה בין רמות השירות של reCAPTCHA.
אחרי שתשלימו את תהליך המיגרציה, יחולו השינויים הבאים:
- מפתחות האתר שלכם זמינים ב Google Cloud פרויקט בלי לבצע שינויים.
- השילוב הקיים של reCAPTCHA ימשיך לפעול בלי שתצטרכו לשנות את הקוד. תוכלו להשאיר את אותם כלי מדידה בדפי האינטרנט ואת אותן קריאות לשרת הקצה העורפי. עם זאת, כדי לגשת לתכונות כמו הגנה על החשבון או הגנה על הסיסמה, תצטרכו לשנות את כלי המדידה בדפי האינטרנט ואת הקריאות לשרת הקצה העורפי. מידע נוסף זמין במאמר בנושא שימוש בתכונות של reCAPTCHA אחרי ההעברה.
- תחויבו אם תחרגו מהמכסה החודשית של reCAPTCHA, שהיא 10,000 הערכות בחודש. מידע נוסף זמין במאמר פרטי חיוב.
מעבר באמצעות מסוף Admin של reCAPTCHA
עוברים אל מסוף Admin של reCAPTCHA.
בוחרים את הפרויקט שאליו רוצים להעביר את המפתחות.
בוחרים את המפתחות שרוצים להעביר.
לוחצים על שליחה.
המסוף Google Cloud ייפתח עם הפרויקט והמפתחות שהועברו.
העברה באמצעות מסוף Google Cloud
לפני שמתחילים
-
בדף לבחירת הפרויקט במסוף Google Cloud , בוחרים פרויקט ב- Google Cloud או יוצרים אותו.
תפקידים שנדרשים כדי לבחור או ליצור פרויקט
- Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
-
יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (יצירת פרויקטים) (
roles/resourcemanager.projectCreator), שכולל את ההרשאהresourcemanager.projects.create. איך מקצים תפקידים
-
מוודאים שהחיוב מופעל בפרויקט Google Cloud .
כדי להעביר את reCAPTCHA, צריך לקשר את החיוב ולהפעיל אותו בפרויקט. אפשר להפעיל את החיוב באמצעות כרטיס אשראי או מזהה חיוב של פרויקט קיים Google Cloud . אם אתם צריכים עזרה בנושא חיוב, אתם יכולים לפנות אל התמיכה בנושאי חיוב ב-Cloud.
- כדי להריץ את ה-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.
המסוף
במסוף Google Cloud , נכנסים לדף reCAPTCHA Enterprise API.
מוודאים ששם הפרויקט מופיע בבורר הפרויקטים בחלק העליון של הדף.
אם שם הפרויקט לא מופיע, לוחצים על בורר הפרויקטים ובוחרים את הפרויקט.
- לוחצים על Enable.
gcloud
-
במסוף Google Cloud , מפעילים את Cloud Shell.
בחלק התחתון של Google Cloud המסוף יתחיל סשן של Cloud Shell ותופיע הודעה של שורת הפקודה. Cloud Shell היא סביבת מעטפת שבה ה-CLI של Google Cloud מותקן ומוגדרים ערכים לפרויקט הקיים. הסשן יופעל תוך כמה שניות.
- כדי להגדיר את הפרויקט Google Cloud בסשן של gcloud, מריצים את הפקודה
gcloud config set project. מחליפים את PROJECT_ID במזהה הפרויקט ב- Google Cloud .gcloud config set project PROJECT_ID - כדי להפעיל את reCAPTCHA Enterprise API, מריצים את הפקודה
gcloud services enable:gcloud services enable recaptchaenterprise.googleapis.com - כדי לוודא ש-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)
- בעלי הפרויקט (
מעבירים את מפתח האתר באמצעות מסוף Google Cloud , Google Cloud CLI או reCAPTCHA Enterprise API.
העברת מפתח האתר לא משפיעה על המפתח או על נקודות הקצה של ה-API, אלא מוסיפה את המפתח לרישיון הארגוני.
מסוף Google Cloud
נכנסים לדף reCAPTCHA במסוף Google Cloud .
מוודאים ששם הפרויקט מופיע בבורר המשאבים שבראש הדף. אם שם הפרויקט לא מופיע, לוחצים על בורר המשאבים ובוחרים את הפרויקט.
בקטע Classic keys, מאתרים את המפתח שרוצים להעביר ולוחצים על Upgrade key.
כדי להשלים את ההעברה של המפתח שנבחר, לוחצים על אישור.
CLI של gcloud
כדי להגדיר אימות, מריצים את הפקודה הבאה של
gcloud:gcloud auth loginמתחברים לחשבון המשתמש ב-reCAPTCHA שהוא הבעלים של מפתח האתר שנבחר, ושיש לו אחד מהתפקידים הבאים: בעלים של הפרויקט, עורך של הפרויקט או אדמין של reCAPTCHA Enterprise.
בוחרים ומעתיקים מפתח אתר פעיל שבו השתמשתם כדי לשלב reCAPTCHA בדפי האינטרנט:
- נכנסים למסוף Admin של reCAPTCHA ולוחצים על .
בוחרים מפתח אתר. מפתחות האתרים הבאים של reCAPTCHA נתמכים לצורך העברה: reCAPTCHA גרסה 2 עם תיבת סימון, reCAPTCHA גרסה 2 בלתי נראה ו-reCAPTCHA גרסה 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
בוחרים ומעתיקים מפתח אתר פעיל שבו השתמשתם כדי לשלב reCAPTCHA בדפי האינטרנט:
- נכנסים למסוף Admin של reCAPTCHA ולוחצים על .
בוחרים מפתח אתר. מפתחות האתרים הבאים של reCAPTCHA נתמכים לצורך העברה: reCAPTCHA גרסה 2 עם תיבת סימון, reCAPTCHA גרסה 2 בלתי נראה ו-reCAPTCHA גרסה 3.
כדי להעתיק את מפתח האתר, לוחצים על העתקת מפתח האתר.
מעבירים את מפתח האתר.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- 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" } }
כדי לוודא שמפתח האתר הועבר, מבצעים את הפעולות הבאות:
מסוף Google Cloud
עוברים לדף reCAPTCHA ומחפשים את מפתח האתר שהועבר בקטע מפתחות reCAPTCHA.
CLI של gcloud
מריצים את הפקודה
gcloud recaptcha keys listומוצאים את מפתח האתר שהועבר ברשימת המפתחות.
אחרי המעבר ל-reCAPTCHA, אפשר להמשיך להשתמש בשיטה siteverify כדי להעריך את טוקן התשובה של משתמש ב-reCAPTCHA. מידע על התשובה זמין במאמר תשובה של siteverify method.
אחרי שמבצעים מיגרציה של מפתח אתר ל-reCAPTCHA, מתחילים לתעד את השימוש בו כדי להציג אותו ב- Google Cloud Console תוך שעה אחת, כולל לוחות בקרה שקשורים לשימוש ולניקוד. בדרך כלל, השימוש לפני ההעברה לא מוצג במסוף Google Cloud .
אפשר לבטל את תפקיד ה-IAM reCAPTCHA Enterprise Admin (roles/recaptchaenterprise.admin) בחשבון המשתמש שלכם ב-reCAPTCHA. אפשר לבקש מהאדמין לבטל את הגישה, או לפעול לפי ההוראות במאמר הענקה, שינוי וביטול של גישה.