2012-02-15 8 views
3

私のアプリケーションのすべての画面は、私のサーバーから来るデータから構成されています。 このサーバーは、JSONを含む1つの文字列を単純に返すWSDLに基づいて、さまざまな種類のWebサービスを公開しています。サーバー上でWebサービスを呼び出すときにセキュリティを使用する最も良い方法

今、私はこのサーバーをオンラインにしたい段階に達しており、その周りのセキュリティ面に懸念しています。

最良のアプローチは何ですか?モバイルアプリとサーバー間のデータは厳密には敏感ではありませんが、ウェブ上ですべて公開する必要はありません。

SSLチャネルを確立するだけで十分ですか?私はセキュリティがデータの送受信に関してアプリケーションのパフォーマンスにどのように影響するかについても懸念しています。

私が従うべきベストプラクティス文書はありますか?

みんなありがとう、 フェリペ

答えて

3

は、あなたの質問は、あなたが探している「セキュリティ」の具体的な種類を指定しません!

  • あなたが不正アクセスを心配している場合は、ユーザーがログインするための資格情報を持つユーザーアカウントを実装する必要があります。
  • あなたが認可され、認証APIへのアクセスが必要な場合には、API keysを検討すべきです。
  • ワイヤでデータ機密性が必要な場合。確かに、SSLは行く方法です。あなたの質問に答えて、SSL/TLS is not computationally expensive any more
  • サーバーのシステムセキュリティの観点から、OS、Webサーバー、およびその他のソフトウェアにパッチが適用されていることを確認してください。必要以上にポートを開く必要はありません。 sshポートが開いている場合は、キーベースの認証が必要です(鍵ベースの認証が不可能な場合は非常に強力なパスワード)
+0

ありがとう、Shivam。それは理にかなっている。 –

2

「Data in Motion」絶対ベスト・ベットはSSLです。

SSLを攻撃する主な方法はいくつかあります。

最初に、自分のドメインに独自の証明書を発行することができる中間サーバーセットアップの人がいる場合です。これにより、クライアントは自分のサーバーが本当のものだと思うでしょう。一方、サーバーはパケットを取得し、復号化し、データを格納し、実際のSSL証明書を使用して再暗号化し、サーバーに送信します。いくつかのSSL証明書会社は最近、これを行った証明書を提供して逮捕されました。しかし、これを設定する際の費用は、本当に価値の高いターゲットがほしいということを意味します。

2つ目は、サーバーとデバイス自体のいずれかにアプリがインストールされていて、アプリとネットワークAPIの間に自分自身を挿入できるものがある場合です。ここでのアイデアは、復号化後または暗号化前のいずれかでデータをキャプチャできるということです。 Androidなどのデバイスには既にこの種類のソフトウェアがインストールされているようですが、の場合はのみがネットワーク関連の問題のデバッグに使用されます。

ポイントは、SSL証明書を取得し、インストールして、他のことについて心配です。

+0

あなたの答えをありがとう! –

関連する問題