2017-02-07 10 views
0

私はここに角度のreCAPTCHAを使用しています:https://github.com/VividCortex/angular-recaptchaユーザがキャプチャを確認したかどうかを検証することに成功し、クライアント側とサーバ側で、私は以下のようにそれをやっているが実装されているクライアントサイドのrecaptchaを使用するのはどれくらい安全ですか?

public function rules() { 
    return [ 
     'EmailAddress' => 'required', 
     'Password'  => 'required', 
     'Captcha'  => 'required', 
    ]; 
} 

私は、サーバー側の検証を行っておりませんので、私はこれを実装するために誰の公開鍵を使用することができると思うのセキュリティ

  1. についての質問のカップルを持っています。 recaptcha サーバーとクライアントの両方を実装する必要がありますか?

  2. クライアント側(AngularJs)からの任意の文字列を送信して、誰もが自動呼び出しを取り除くために任意の文字列を注入できるようにすることができます。サーバー側ルールには必須のキーしかないため、これは です。

、それを安全にする方法はありますか?

+1

最終チェック/検証は、常にサーバー側で行う必要があります。クライアントサイドのコードは誰でも見ることができ、操作することができるので、クライアント側のコードはユーザのフィードバックのためだけであり、サーバに送信するデータの検証はできません。 –

+0

サーバー側のクライアント側からの応答をクロスチェックするためのリンクがありますか?私は、クライアント側から応答を送信するために、任意のAPIが必要なのですか? –

+0

私はangleもlaravelも使用しないので、私はあなたに特定のリンクを与えることができます。クライアントがデータをサーバーに送信する際には、検証が失敗した場合に、その情報がクライアントに返されなかった理由を返信し、それ以外の場合はデータを処理してクライアントに成功応答を送信します。 –

答えて

0

ここはgoogleの公式のコード例です。それはPHPで書かれています。サーバー側の検証をどのように処理するかを確認できます。フォローリンクon GitHub

関連する問題