וובמאסטר - תיכנות ובניית אתרים

מדריך CSHTML - הוספת אבטחה לאתר - מנגנון CAPTCHA

ליאור זמיר ,‏ ג'ון ברייס הדרכה‏ ‏/‏ 6 פברואר, 2011
F+
F-

מה תלמד:

· כיצד להשתמש במנגנון CAPTCHA כדי למנוע תוכנות אוטומטיות ("בוטים") ליצור חשבונות משתמשים.

אלו הם העוזרים (Helpers) שנציג בפרק זה:

· ReCaptcha Helper

מניעת תוכניות אוטומטיות מלהצטרף לאתר האינטרנט שלך

דף ההתחברות לא יעצור תוכנות אוטומטיות (מכונות לעיתים רובוטים או בוטים) מלהרשם לאתר שלך. (מניע נפוץ לבוטים להצטרף לקבוצות הוא לפרסם URL או מוצרים למכירה). אתה יכול לוודא שהמשתמש שנרשם הוא אדם אמיתי ולא תוכנת מחשב באמצעות מבחן CAPTCHA המאמת את הקלט.

המושג CAPTCHA הוא ראשי-תיבות של Completely Automated Public Turing test to tell Computers and Humans Apart. כלומר, מבחן אוטומטי שנועד להבחין בין אדם למחשב.

בדפיCSHTML ניתן להשתמש בעוזרReCaptcha להציג מבחן CAPTCHA המבוסס על השירות reCAPTCHA ( http://recaptcha.net ). העוזר ReCaptcha מציג תמונה מעוותת של שתי מילים שהמשתמשים צריכים להזין כראוי כדי שהדף יאומת. תגובת המשתמש מאומתת על ידי שירות ReCaptcha.Net.

ReCaptcha

1. רשום את האתר שלך ב- http://recaptcha.net. כאשר תשלים את ההרשמה, תקבל מפתח ציבורי (public key) ומפתח פרטי (private key).

2. הוסף לאתר שלך את החבילה: ASP.NET Web Helpers Library במידה ועדיין לא עשית זאת. (ניתן לעשות זאת ע"י הפעלת האתר ופניה לתיקיה Admin_ . לדוגמה: http://localhost:11111/_Admin ולהוסיף מרשימת ה- Online Packages את החבילה ASP.NET Web Helpers Library).

3. בתיקיית Account של האתר, פתח את הקובץ Register.cshtml.

4. הסר את סימון ההערה (//) מהשורה בקוד המגדירה את המשתנה captchaMessage :

var captchaMessage = "";

5. החלף את המחרוזת PRIVATE_KEY עם המפתח הפרטי שלך.

6. הסר את סימוני ההערה (//) מהשורות בקוד המכילות את הקריאה לפונקציה ReCaptcha.Validate.

הדוגמה הבאה מציגה את הקוד השלם (החלף את user-key-here במפתח הפרטי שלך):

  // Validate the user's response
  if (!ReCaptcha.Validate("user-key-here"))
  {
    captchaMessage = "Response was not correct";
    isValid = false;
  }

7. בתחתית הדף Register.cshtml , החלף את המחרוזת PUBLIC_KEY עם המפתח הציבורי שלך.

8. הסר את סימוני ההערה (//) מהשורה בקוד המכילה את הקריאה לעוזר ReCaptcha.
הדוגמה הבאה מציגה את הקוד השלם (החלף את user-key-here במפתח הציבורי שלך):

@ReCaptcha.GetHtml("user-key-here ", theme: "white")

9. הפעל את הדף Default.cshtml בדפדפן. אם אתה מחובר לאתר, לחץ על הקישור Logout.

10. לחץ על הקישור Register ובדוק את ההרשמה באמצעות מבחן ה- CAPTCHA.

Register an account

הערה: אם המחשב שלך נמצא על dominהעושה שימוש בשרת Proxy, ייתכן שיהיה עליך להגדיר את התגית defaultproxy בקובץ web.config.
הדוגמה הבאה מראה קובץ web.config עם defaultproxy מוגדר להפעיל את השירות reCAPTCHA.

<?xml version="1.0"?>

<configuration>

  <system.net
>
    <
defaultProxy
>
      <
proxy
         usesystemdefault = "false"
         proxyaddress="http://myProxy.MyDomain.com"
         bypassonlocal="true"
         autoDetect="False"
         />
    </
defaultProxy
>
  </
system.net>

</configuration
>

ליאור זמיר, ג'ון ברייס הדרכה

כיום אני ה- Webmaster של תוכנית החדשנות של HPE Software.
לפני כן, הייתי מנהל תחום Webmaster ומרצה בכיר בג'ון-ברייס (במשך 9 שנים) בקורסים לפיתוח ותיכנות באמצעות Microsoft .NET, מולטימדיה, בניית אתרי אינטרנט ואינטראנט. פיתוח הדרכה ומתן ייעוץ טכנולוגי.
תגיות: ASP.NET‏  /  CSHTML‏  

תגובות בפייסבוק

תגובות למאמר



עוד במדריך

תגיות פופולאריות

X
הצטרף לעמוד שלנו בפייסבוק להישאר מעודכן!
וובמאסטר © כל הזכויות שמורות