1

私はほとんど静的な Web アプリに取り組んでいます - HTML/CSS/JS + アセットだけです。私はそれを提供するためにラックサーバー(実際には薄い)を使用しています。

アプリはほとんど静的ですが、途中で発生したサーバー側のニーズがいくつかあります。アプリは JavaScript を介してこれらのニーズに対応する必要があるため、単純な API として機能するいくつかのルートを簡単に設定できるように、Sinatra をスタックに追加しました。

そのような API 呼び出しの 1 つは、電子メールを送信することです。Web アプリには、ユーザーに電子メールを送信する方法が必要です。JSON オブジェクトを含む POST で呼び出せるルート (/api/mail) を設定すると、Ruby が (SendGrid 経由で) メールを送信します。

これが私の問題です - 本質的に、これらの API 呼び出しは公開されています。ほとんどの場合、それで問題ありませんが、メール API を使用して、アプリを装った単純な POST で悪意のあるメールを送信し始めることができないように、メール API を保護したいと考えています。

問題は、これを認証する方法がよくわからないことです。Web アプリ自体はユーザーではなくクライアントであるため、POST ヘッダーを盗み見して、アプリが API に送信している資格情報を取得できるため、パスワードや API キーは無意味に見えます。

SSL 経由ですべてを暗号化することが私の唯一の選択肢ですか、それとも明白な解決策が欠けていますか?

4

1 に答える 1

2

結局のところ、何をしても簡単にスクレイピングできます。私はIPとセッションによって積極的なレート制限を行いますが、他に何かが可能(または効果的)になるかどうかは考えないでください

于 2012-04-26T05:31:45.210 に答える