2011-06-19 8 views
0

私はデータベースサーバーから最新の記事をiPhoneアプリに取り込むためのサービスAPIを作成します。私のiPhoneアプリだけがapiの消費者であり、他のクライアントがそれにアクセスすることができないようにするためにはどうすればよいのでしょうか?私はスーパーセキュアなソリューションを探しているわけではありませんが、着信要求に対してはあるレベルのファイアウォールを置くことができます。 また、このクライアントサイド認証を有効にするPHPのコードスニペットはありますか?iPhone Appサーバーによる認証

答えて

1

APIをロックして、アプリケーションからのリクエストに制限するのは簡単ではありません。あなたはユーザーエージェントのチェックをすることができますが、それは価値があるよりもトラブルです。特定のクエリ文字列のキーと値のペア(UUIDなど)を渡すこともできますが、簡単にスプーフィングでき、値も提供されません。

時間を投資したい場合は、キー/トークン/ナンスを生成し、サーバーに要求が行われたときにチェックする方法があります(Oauthはこの例です)。

要件を評価し、データを保護することの重要性を判断する必要があります。あなたが簡単な解決策を探しているとすれば、私はデータがそれほど重要ではないと仮定しており、この作業はすべて必要ではありません。

1

あなたのiPhoneアプリの中にAPIキーを入れて、各リクエストでキー(おそらくタイムスタンプでハッシュされている)を送ることができます。それから、あなたのサーバーは自分のダイジェストの計算と照合します。基本的に実装するのが基本ですが、明らかにスーパーセキュアではありませんが、それはスタートです。

関連する問題