/ #software #recaptcha 

ReCaptcha Kullanımı

ReCaptcha

Sitenize gelebilecek saldıralara karşı bir önlem olarak kullanılacak eklentilerden biridir ReCaptcha.

Kolay bir şekilde entegre edilir ve kolay bir şekilde güvenlik sağlanır.

Bunun için aşağıdaki adımları uygulamanız yeterli olacaktır.

  • https://www.google.com/recaptcha/admin#list sitesine gidiniz.Ve gerekli yerleri doldurunuz.
  • Label kısmına ReCaptcha i hangi sayfada kullanacaksınız,(örneğin giriş sayfası için) GirişCaptcha diyin.
  • Domain kısmına sitenizin domain i ekleyin.Her biri bir satır olacak şekilde.Birden fazla domain girerek aynı kodu farklı domainlerde çalıştırabilirsiniz.
  • Owner kısmına ise Adınız yazın.
  • div kısmını ReCaptcha'nın nerede gözükmesini istiyorsanız oraya koyun.(form elementinin içersinde olmalıdır.)
  • script kısmını site kodunuzun en altına, body tagınızın bi üstüne koyun.
  • Client tarafında yapacaklarınız bu kadar.
  • Server tarafına geçtiğimizde ise Client tarafındaki formdan gönderilen bilgileri alır gibi “g-recaptcha-response” parametresiyle değeri alıyoruz.Ve ReCaptcha api sinin kullanarak eşleşmenin sağlanığ sağlanmadığına bakıyoruz.
  • Bunun için server kısmına
       private static bool ControlReCaptcha(string secretKey, string reCaptcha, string remoteIp)
       {
           var secretkey = secretKey;
           var recaptcha = reCaptcha;
           var remoteip = remoteIp;
           var recaptchacommand = "https://www.google.com/recaptcha/api/siteverify?secret=" + secretkey +
                                  "&response=" + recaptcha + "&remoteip=" + remoteip;

           var resp = WebRequest.Create(recaptchacommand).GetResponse();
           var str = resp.GetResponseStream();
           var sr = new StreamReader(str);
           var a = sr.ReadToEnd();
           JObject obj = JObject.Parse(a);
           var sonuc = obj["success"].ToString().ToLower();
           return sonuc == "true";
       }

fonksiyonunu ekliyoruz.Ve gerekli parametreleri girdiğimizde fonksiyon bize true – false olacak şekilde sonucu döndürüyor.