ASP.NET での reCAPTCHA の使用

重要: reCAPTCHA API のバージョン 1.0 のサポートは終了しました。バージョン 2.0 にアップグレードしてください。詳細

reCAPTCHA ASP.NET ライブラリを使用すると、ASP.NET ウェブサイトに CAPTCHA を簡単に配置して、bot による悪用を防止できます。このライブラリは、reCAPTCHA API をラップします。このライブラリは、C# や Visual Basic .NET など、任意の .NET 言語から使用できます。

reCAPTCHA を ASP.NET で使用するには、reCAPTCHA ASP.NET ライブラリをダウンロードします。

クイック スタート

API キーを登録したら、以下の基本的な手順に沿って、ASP.NET を使用してサイトに reCAPTCHA をインストールします。

  1. ウェブサイト上のリファレンスを library/bin/Release/Recaptcha.dll に追加します。Visual Studio の [ウェブサイト] メニューで、[参照の追加] を選択し、ダイアログ ボックスの [.NET] タブをクリックします。.NET コンポーネントのリストから Recaptcha.dll コンポーネントを選択し、[OK] をクリックします。このコンポーネントが表示されない場合は、[参照] タブをクリックして、ハードドライブでアセンブリ ファイルを探します。
  2. 次のコード スニペットを追加して、保護するフォームに reCAPTCHA コントロールを挿入します。

    aspx ページの上部に、次の内容を挿入します。

      <%@ Register TagPrefix="recaptcha" Namespace="Recaptcha" Assembly="Recaptcha" %>
    

    次に、reCAPTCHA コントロールを <form runat="server"> タグ内に挿入します。

      <recaptcha:RecaptchaControl
        ID="recaptcha"
        runat="server"
        PublicKey="your_public_key"
        PrivateKey="your_private_key"
        />
    

    公開鍵と秘密鍵をそれぞれ公開鍵と秘密鍵に置き換える必要があります。

  3. フォームの検証には必ず ASP.NET の検証を使用してください(送信時に Page.IsValid を確認する必要があります)。

次は、Visual Basic を使用した reCAPTCHA による「Hello World」です。ライブラリのダウンロードには C# サンプルが含まれています。

  <%@ Page Language="VB" %>
  <%@ Register TagPrefix="recaptcha" Namespace="Recaptcha" Assembly="Recaptcha" %>
  <script runat=server%gt;
      Sub btnSubmit_Click(ByVal sender As Object, ByVal e As EventArgs)
          If Page.IsValid Then
              lblResult.Text = "You Got It!"
              lblResult.ForeColor = Drawing.Color.Green
          Else
              lblResult.Text = "Incorrect"
              lblResult.ForeColor = Drawing.Color.Red
          End If
      End Sub
  </script>
  <html>
  <body>
      <form runat="server">
          <asp:Label Visible=false ID="lblResult" runat="server" />
          <recaptcha:RecaptchaControl
              ID="recaptcha"
              runat="server"
              Theme="red"
              PublicKey="your_public_key"
              PrivateKey="your_private_key"
              />

          <asp:Button ID="btnSubmit" runat="server" Text="Submit" OnClick="btnSubmit_Click" />
      </form>
  </body>
  </html>

関連情報

  • デザインのカスタマイズ
  • ヒントとガイドライン
  • トラブルシューティング