1

電子メールのサインアップ フォームを備えた Web サイトがいくつかあります。これらの Web サイトとは別のサーバーに中央データベースを作成したいと考えています。フォームのアクション属性を、中央データベースのサーバーにある Web サービスに設定することを考えていました。この Web サービスは、単純にデータをデータベースに保存できます。中央サーバーのハッキング/フラッディングを回避するために、どのようなセキュリティ ソリューションを推奨できますか?

解決策の 1 つは、データの送信元 (私の Web サイト) の IP / ドメインを確認し、それが異なる場合はその IP をブロックすることです。

他にどのようなソリューションをお勧めしますか? キャプチャはここではうまく機能しないと思います。

4

2 に答える 2

2

単純な Web サービスを作成する場合は、アクションを現在のサーバーに設定するだけで、そのサーバー上の PHP スクリプトが中央データベースの Web サービスと通信できるようになります。このようにして、認証行うことができ、セキュリティの問題はありません。

于 2012-11-26T10:13:34.643 に答える
0

代替のより安全なソリューションは、サーバー側のプロキシ スクリプトを各 Web サイトで実行して、フォーム入力を中央の Web サービスに転送し、プロキシと受信者だけが知っているアプリケーション シークレットを使用することです。

非常に単純な実装 (未テスト):

プロキシ.php

<?php
$secret = '[RANDOMSTRING]'
$webservice = 'https://www.yourhost.com/receiver.php'
$formData = serialize($_POST);
file_get_contents($webservice . '?secret=' . $secret . '&data=' . urlencode($formData));
?>

受信機.php

<?php
if ($_GET['secret'] == '[RANDOMSTRING]') {
    $formData = unserialize($_GET['data']);
} else {
    // ignore
}

注:サーバー間の通信のみが関与する (https を使用して強化する) ため、盗聴のリスクは無視できます。

于 2012-11-26T10:12:52.837 に答える