יצירת מפתחות reCAPTCHA לאפליקציות לנייד

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

מפתחות reCAPTCHA מייצגים את האופן שבו reCAPTCHA מוגדר לאפליקציה לנייד.

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

יצירה של מפתח reCAPTCHA

אפשר ליצור מפתחות שמבוססים על ניקוד רק לאפליקציות לנייד.

כשיוצרים מפתחות reCAPTCHA לאפליקציות לנייד, מומלץ:

  • יוצרים מפתח reCAPTCHA אחד לכל אפליקציה לנייד.
  • ב-Android, צריך ליצור מפתחות נפרדים לתרחישים הבאים:

    • חבילת Android זמינה רק בחנות Google Play.
    • חבילת Android זמינה רק בחנויות אפליקציות שאינן חנות Google Play.
  • צריך ליצור מפתחות reCAPTCHA נפרדים לסביבות Staging וייצור. אחרת, אתם עלולים לזהם את ניתוח הסיכונים של reCAPTCHA בנתונים מסביבת הבדיקה.

הדרך הכי פשוטה ליצור מפתח reCAPTCHA היא באמצעותGoogle Cloud המסוף. לחלופין, אפשר להשתמש ב-reCAPTCHA Enterprise API או ב-Google Cloud CLI.

המסוף

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

    כניסה אל Google Cloud Fraud Defense

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

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

  3. לוחצים על הכרטיסייה Keys.
  4. לוחצים על Create key.
  5. בשדה שם לתצוגה, מזינים שם לתצוגה של המפתח.
  6. בהתאם לסוג מפתח reCAPTCHA שרוצים ליצור לאפליקציה לנייד, מבצעים את הפעולה המתאימה:
  7. יצירת מפתחות reCAPTCHA לאפליקציות ל-iOS

    מומלץ ליצור מפתח reCAPTCHA אחד לכל אפליקציית iOS.

    1. בקטע Application type, בוחרים באפשרות iOS.
      1. בקטע רשימת מזהי חבילות ל-iOS, לוחצים על הוספת מזהה חבילה ל-iOS.
      2. בשדה Bundle ID (מזהה החבילה), מזינים את השם של מזהה החבילה של iOS.

      3. אופציונלי: כדי להוסיף מזהה חבילה נוסף, לוחצים על הוספת מזהה חבילה ל-iOS ומזינים את השם של מזהה החבילה ל-iOS בשדה מזהה החבילה.
      4. כדי להגן על מפתח reCAPTCHA עבור מזהי החבילות, צריך לוודא שהמתג השבתת אימות מזהה החבילה מושבת. אם משביתים את אימות מזהה החבילה, צריך לאמת את השדה tokenProperties.iosBundleId בבדיקות שיוצרים.
      5. אופציונלי: מספקים הגדרות למפתחים של אפל.

        מומלץ לספק את הנתונים האלה כי הם מאפשרים ל-Fraud Defense לספק ציוני סיכון מדויקים יותר לגבי התנועה שלכם.

        מזינים את פריטי המידע האלה:

        • מפתח פרטי (‎.p8): המפתח הזה נוצר ב-Apple Developer Center בקטע Certificates, Identifiers & Profiles (אישורים, מזהים ופרופילים).
        • מזהה המפתח: מזהה מפתח המפתחים של אפל (מחרוזת בת 10 תווים).
        • מזהה צוות: מזהה הצוות של אפל (מחרוזת בת 10 תווים) שבבעלותו פרופיל ההקצאה שמשמש ליצירת האפליקציה.
      6. אופציונלי: לוחצים על השלב הבא (אופציונלי).
        1. אם רוצים לציין ציון שהמפתח יחזיר כשייווצרו הערכות כלשהן עבור הסביבה שאינה סביבת ייצור, צריך לבצע את הפעולות הבאות:

          1. בקטע הגדרות נוספות, לוחצים על המתג האם אתה יוצר את המפתח הזה למטרות בדיקה בלבד?.
          2. משתמשים בפס ההזזה הגדרת ציון כדי לציין ציון בין 0 ל-1.0.
      7. לוחצים על Create key.
      8. המפתח החדש שנוצר מופיע בדף מפתחות reCAPTCHA.

    יצירת מפתחות reCAPTCHA לאפליקציות ל-Android

    1. בקטע סוג האפליקציה, בוחרים באפשרות Android.
    2. בקטע רשימת חבילות Android, לוחצים על הוספת חבילת Android.
    3. בשדה Android package (חבילת Android), מזינים את השם של חבילת Android.
    4. אופציונלי: כדי להוסיף חבילה נוספת, לוחצים על הוספת חבילת Android ומזינים את השם של חבילת Android נוספת בשדה חבילת Android.
    5. כדי לוודא שמפתח reCAPTCHA ישמש רק באפליקציה שלכם, משביתים את המתג השבתת אימות שם החבילה. אם משביתים את אימות שם החבילה, צריך לאמת את השדה tokenProperties.androidPackageName בבדיקות שיוצרים.
    6. אם רוצים ליצור מפתח לאפליקציה שזמינה בחנויות אפליקציות אחרות בנוסף לחנות Google Play, מפעילים את האפשרות תמיכה באפליקציות שמופצות מחוץ לחנות Google Play.
    7. אופציונלי: לוחצים על השלב הבא (אופציונלי).
      1. אם רוצים לציין ציון שהמפתח יחזיר כשייווצרו הערכות כלשהן עבור הסביבה שאינה סביבת ייצור, צריך לבצע את הפעולות הבאות:

        1. בקטע הגדרות נוספות, לוחצים על המתג האם אתה יוצר את המפתח הזה למטרות בדיקה בלבד?.
        2. משתמשים בפס ההזזה הגדרת ציון כדי לציין ציון בין 0 ל-1.0.
    8. לוחצים על Create key.
    9. המפתח החדש שנוצר מופיע בדף מפתחות reCAPTCHA.

‫gcloud ‏ (iOS)

כדי ליצור מפתחות reCAPTCHA, משתמשים בפקודה gcloud recaptcha keys create.

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

  • ‫DISPLAY_NAME: השם של המפתח. בדרך כלל שם האתר.
  • ‫BUNDLE_IDs: מזהי החבילות של אפליקציות ל-iOS שמורשות להשתמש במפתח. מציינים כמה מזהי חבילות כרשימה מופרדת בפסיקים.

מריצים את הפקודה gcloud recaptcha keys create:

‫Linux,‏ macOS או Cloud Shell

gcloud recaptcha keys create \
--display-name=DISPLAY_NAME  \
--ios --bundle-ids=BUNDLE_IDs

‏Windows (PowerShell)

gcloud recaptcha keys create `
--display-name=DISPLAY_NAME  `
--ios --bundle-ids=BUNDLE_IDs

Windows‏ (cmd.exe)

gcloud recaptcha keys create ^
--display-name=DISPLAY_NAME  ^
--ios --bundle-ids=BUNDLE_IDs

התשובה תכיל את מפתח reCAPTCHA החדש שנוצר.

‫gcloud ‏ (Android)

כדי ליצור מפתחות reCAPTCHA, משתמשים בפקודה gcloud recaptcha keys create.

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

  • ‫DISPLAY_NAME: השם של המפתח. בדרך כלל שם האתר.
  • ‫PACKAGE_NAMES: שמות החבילות של אפליקציות ל-Android שמורשות להשתמש במפתח. מציינים כמה שמות של חבילות ברשימה שמופרדת בפסיקים.

מריצים את הפקודה gcloud recaptcha keys create:

‫Linux,‏ macOS או Cloud Shell

gcloud recaptcha keys create \
--display-name=DISPLAY_NAME  \
--android --package-names=PACKAGE_NAMES

‏Windows (PowerShell)

gcloud recaptcha keys create `
--display-name=DISPLAY_NAME  `
--android --package-names=PACKAGE_NAMES

Windows‏ (cmd.exe)

gcloud recaptcha keys create ^
--display-name=DISPLAY_NAME  ^
--android --package-names=PACKAGE_NAMES

התשובה תכיל את מפתח reCAPTCHA החדש שנוצר.

REST ‏ (iOS)

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

  • ‫DISPLAY_NAME: השם של המפתח. בדרך כלל שם האפליקציה.
  • ‫BUNDLE_IDs: מזהי החבילות של אפליקציות ל-iOS שמורשות להשתמש במפתח. מציינים כמה מזהי חבילות כרשימה מופרדת בפסיקים.

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

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

גוף בקשת JSON:

{
  "displayName": "DISPLAY_NAME",
  "iosSettings": {
   "allowedBundleIds":"BUNDLE_IDs"

  }
}

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

curl

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

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

PowerShell

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

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

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys" | Select-Object -Expand Content

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


{
  "name": "projects/project-id/keys/6LfhtywnAAAAABY3sCS2duZ6A55kmDXz-PNEgKgT",
  "displayName": "DISPLAY_NAME",
  "iosSettings": {
    "allowAllBundleIds": false,
    "allowedBundleIds": [
        BUNDLE_IDS
    ]
  },
  "labels": {},
}

REST ‏ (Android)

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

  • ‫DISPLAY_NAME: השם של המפתח. בדרך כלל שם האפליקציה.
  • ‫PACKAGE_NAMES: שמות החבילות של אפליקציות ל-Android שמורשות להשתמש במפתח. מציינים כמה שמות של חבילות ברשימה שמופרדת בפסיקים.

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

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

גוף בקשת JSON:


{
  "displayName": "DISPLAY_NAME",
  "androidSettings": {
  "allowedPackageNames":"PACKAGE_NAMES"
  }
}

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

curl

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

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

PowerShell

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

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

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys" | Select-Object -Expand Content

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


{
  "name": "projects/project-id/keys/6LcioSknAAAAABrjlMuZv2fjIGYMqwaAFC9izhoy",
  "displayName": "DISPLAY_NAME",
  "androidSettings": {
      "allowAllPackageNames": false,
      "allowedPackageNames": [
          PACKAGE_NAMES
      ],
      "supportNonGoogleAppStoreDistribution": false
  },
  "labels": {},
}

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