במאמר הזה מוצגות דוגמאות להטמעה של התכונות של reCAPTCHA for WAF ב-Cloud Armor.
אפשר להשתמש בתכונה אחת או יותר של reCAPTCHA ל-WAF באפליקציה אחת.
אם רוצים להשתמש ביותר מתכונה אחת, צריך ליצור מפתח reCAPTCHA לכל אחת מהתכונות האלה ולהשתמש בהן באפליקציה. לדוגמה, אם רוצים להשתמש בטוקנים של פעולות reCAPTCHA ובדף אתגר reCAPTCHA, צריך ליצור מפתח של טוקן פעולה ומפתח של דף אתגר, ולהשתמש בהם באפליקציה.דוגמה 1: שימוש באסימוני סשן של reCAPTCHA ובדף מבחן reCAPTCHA
אתם יכולים להוסיף טוקן של סשן reCAPTCHA בדפים שמשתמשים עשויים לגשת אליהם, כדי שקובץ ה-Cookie יתעדכן מעת לעת, למשל דף כניסה. מגדירים כלל במדיניות האבטחה של Cloud Armor להפניית הבקשה לדף של מבחן reCAPTCHA כשהציון נמוך.
באיור הבא מוצג תהליך עבודה שמשתמש בתכונות של מבחן reCAPTCHA ובאסימון סשן של reCAPTCHA:
דוגמה 2: שימוש בטוקנים של פעולות reCAPTCHA ובמבחן reCAPTCHA
אפשר להוסיף טוקן פעולה של reCAPTCHA כדי להגן על פעולת משתמש, כמו מעבר לתשלום. מגדירים כלל במדיניות האבטחה של Cloud Armor להפניית הבקשה לדף של מבחן reCAPTCHA בכל אחד מהמקרים הבאים:
- הציון נמוך.
- המאפיין
action_nameשל טוקן הפעולה לא תואם לפעולת המשתמש שמוגנת.
באיור הבא מוצג תהליך עבודה שמשתמש בתכונות של טוקן פעולה של reCAPTCHA ומבחן reCAPTCHA:
בדוגמה הבאה של סקריפט אפשר לראות איך משתמשים בטוקן פעולה של reCAPTCHA ומפנים למבחן reCAPTCHA עם טוקן הפעולה שמצורף ככותרת:
<script src="/https://www.google.com/recaptcha/enterprise.js?render=ACTION_TOKEN_SITE_KEY"></script>
<script>
function onSuccess(token) {
const xhr = new XMLHttpRequest();
xhr.open('GET','http://www.example.com/checkout', false);
xhr.setRequestHeader("X-Recaptcha-Token", token);
xhr.onreadystatechange = function() {
// Make sure that the request is finished and response is ready with 200
if (this.readyState == 4 && this.status == 200) {
// Display the response, it could be a reCAPTCHA challenge
// page based on your Cloud Armor security rule settings.
document.open();
document.write(xhr.responseText);
document.close();
}
};
xhr.send(null);
}
grecaptcha.enterprise.ready(function () {
document.getElementById("execute-button").onclick = () => {
grecaptcha.enterprise.execute('ACTION_TOKEN_SITE_KEY', {
}).then(onSuccess, onError);
};
});
</script>
המאמרים הבאים
- איך מטמיעים תכונות של reCAPTCHA WAF באמצעות Cloud Armor
- מידע נוסף על תכונות לשילוב עם ספקי שירות WAF