2017-08-01 7 views
1

アウトソーシング会社によって作成されたウェブサイトをJSONペイロードでRESTfulウェブサービスに送信します。ユーザーはそのWebサイトでログインと認証を行いますので、ユーザーのユーザー名とパスワードを知りたくありません。そして、私たちが必要とするのは、送信元のJSONが信頼できるWebサイトであることを確認してから、別のJSONペイロードを返すことです。ウェブサイトとRESTfulウェブサービス間の通信を確保する

私はセキュリティ領域ではかなり新しいので、私たちがメッセージを暗号化/復号化するために証明書を使用することができることを知りました。しかし、最初にハック要求を特定し、その要求を拒否できる場合、解決策は何でしょうか。

+0

単純ですが、HTTPSを使用します。 – zaph

答えて

1

、すぐに私の心の中で二つのことをそこに来ている:

  1. SSL証明書を使用してください。既に、あなたの サイトがインターネット経由で暗号化されて転送されていることが確認されています。
  2. トークンシステムを使用してください。たとえば、クレジットカードのデータは決してあなた自身のサーバーに触れてはならないので、トークンは支払いソリューションに広く使用されています。すべてのトークンには、身元を証明するために使用される秘密の情報が含まれています。
  3. たとえば、HTTPリクエストヘッダーを使用します。 基本認証

は確かに、あなたはSSL証明書を持っている必要があります。これにより、サイトに既に多くのセキュリティが追加されています。

しかし、最初にハッキングリクエストを特定してそのリクエストを拒否できれば、何が解決策になりますか?

さて、あなた自身で回答しました。あなたがそれを検出することができれば、それを拒否します。

+0

したがって、ペイロードを暗号化するためのHttpヘッダー基本認証+ SSL証明書は、私たちの場合に適した組み合わせのように見えます。 HTTPの基本認証がBase64を使ってユーザー名とパスワードを暗号化しているのは不思議ですが、それは安全ですか?ハッカーがリクエストをハイジャックしてデコードできることを意味します。 – Kuku

+0

必ずしもそうではありません。基本認証は通常Base64エンコーディングで行われます。しかし、あなたがしたい場合は、あなたが望むように暗号化することができます。たとえば、MD5や他の何かがあなたの心に来るとします。すべてをリクエストヘッダーに入れることができます。あなた自身のことを行うほど、攻撃者はあなたの側をハイジャックすることが難しくなります。希望が助けます:D –

+0

ありがとうアンドレアス、それは多くの助けになります。 – Kuku

1

あなたの安らかなサービスを保護する簡単な方法は、基本認証のようなものです。残りのコールを行うアプリケーションは、ユーザベースのソリューションが、WebアプリケーションソリューションにWebアプリケーションではないであろう

Authorization: Basic ZWx1c3VhcmlvOnlsYWNsYXZlde 

このような要求ヘッダーを提供するであろう。他のすべての要求は許可されません。あなたの説明のよう

https://en.wikipedia.org/wiki/Basic_access_authentication

関連する問題