Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
oleh Microsoft
Artikel ini menjelaskan cara menggunakan ReCaptcha (langkah keamanan) untuk mencegah program otomatis (bot) melakukan tugas di situs web ASP.NET Web Pages (Razor).
Yang akan Anda pelajari:
- Cara menambahkan pengujian CAPTCHA ke situs Anda.
Ini adalah fitur ASP.NET yang diperkenalkan dalam artikel:
- Pembantunya
ReCaptcha
.Catatan
Informasi dalam artikel ini berlaku untuk halaman web ASP.NET 1.0 dan Halaman Web 2.
Tentang CAPTCHAs
Setiap kali Anda membiarkan orang mendaftar di situs Anda, atau bahkan hanya memasukkan nama dan URL (seperti untuk komentar blog), Anda mungkin mendapatkan banjir nama palsu. Ini sering ditinggalkan oleh program otomatis (bot) yang mencoba meninggalkan URL di setiap situs web yang dapat mereka temukan. (Motivasi umumnya adalah memposting URL produk yang akan dijual.)
Anda dapat membantu memastikan bahwa pengguna adalah orang asli dan bukan program komputer dengan menggunakan CAPTCHA untuk memvalidasi pengguna saat mereka mendaftar atau memasukkan nama dan situs mereka. CAPTCHA adalah singkatan dari uji Turing Publik Yang Sepenuhnya Otomatis untuk memberi tahu Komputer dan Manusia Terpisah. CAPTCHA adalah tes respons tantangan di mana pengguna diminta untuk melakukan sesuatu yang mudah dilakukan seseorang tetapi sulit untuk dilakukan program otomatis. Jenis CAPTCHA yang paling umum adalah salah satu tempat Anda melihat beberapa huruf yang terdistorsi dan diminta untuk mengetiknya. (Distorsi seharusnya mempersulit bot untuk menguraikan huruf.)
Menambahkan Pengujian ReCaptcha
Di halaman ASP.NET, Anda dapat menggunakan pembantu ReCaptcha
untuk merender pengujian CAPTCHA yang didasarkan pada layanan ReCaptcha. Pembantu ReCaptcha menampilkan gambar dua kata terdistorsi yang harus dimasukkan pengguna dengan benar sebelum halaman divalidasi. Respons pengguna divalidasi oleh layanan ReCaptcha.Net.
Daftarkan situs web Anda dengan layanan ReCaptcha. Setelah menyelesaikan pendaftaran, Anda akan mendapatkan kunci umum dan kunci privat.
Tambahkan Pustaka Pembantu Web ASP.NET ke situs web Anda seperti yang dijelaskan dalam Menginstal Pembantu di Situs Halaman Web ASP.NET, jika Anda belum melakukannya.
Jika Anda belum memiliki file _AppStart.cshtml , di folder akar situs web buat file bernama _AppStart.cshtml.
Tambahkan pengaturan pembantu berikut
Recaptcha
di file _AppStart.cshtml :@using Microsoft.Web.Helpers; @{ // Add the PublicKey and PrivateKey strings with your public // and private keys. Obtain your PublicKey and PrivateKey // at the ReCaptcha.Net (http://recaptcha.net) website. ReCaptcha.PublicKey = "your-public-key"; ReCaptcha.PrivateKey = "your-private-key"; }
Atur
PublicKey
properti danPrivateKey
menggunakan kunci publik dan privat Anda sendiri.Simpan file _AppStart.cshtml dan tutup.
Di folder akar situs web, buat halaman baru bernama Recaptcha.cshtml.
Ganti konten yang sudah ada dengan yang berikut ini:
@using Microsoft.Web.Helpers; @{ var showRecaptcha = true; if (IsPost) { if (ReCaptcha.Validate()) { @:Your response passed! showRecaptcha = false; } else{ @:Your response didn't pass! } } } <!DOCTYPE html> <html> <head> <title>Testing Global Recaptcha Keys</title> </head> <body> <form action="" method="post"> @if(showRecaptcha == true){ if(ReCaptcha.PrivateKey != ""){ <p>@ReCaptcha.GetHtml()</p> <input type="submit" value="Submit" /> } else { <p>You can get your public and private keys at the ReCaptcha.Net website (http://recaptcha.net). Then add the keys to the _AppStart.cshtml file.</p> } } </form> </body> </html>
Jalankan halaman Recaptcha.cshtml di browser.
PrivateKey
Jika nilai valid, halaman menampilkan kontrol ReCaptcha dan tombol . Jika Anda belum mengatur kunci secara global di _AppStart.html, halaman akan menampilkan kesalahan.Masukkan kata-kata untuk pengujian. Jika Anda lulus tes ReCaptcha, Anda akan melihat pesan ke efek tersebut. Jika tidak, Anda akan melihat pesan kesalahan dan kontrol ReCaptcha diputar ulang.
Catatan
Jika komputer Anda berada di domain yang menggunakan server proksi, Anda mungkin perlu mengonfigurasi defaultproxy
elemen file Web.config . Contoh berikut menunjukkan file Web.config dengan elemen yang dikonfigurasi defaultproxy
untuk mengaktifkan layanan ReCaptcha berfungsi.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.net>
<defaultProxy>
<proxy
usesystemdefault = "false"
proxyaddress="http://myProxy.MyDomain.com"
bypassonlocal="true"
autoDetect="False"
/>
</defaultProxy>
</system.net>
</configuration>