数ヶ月前、私は iOS(iphone) アプリケーションに取り組みました。これにより、ユーザーはいくつかの種類のイベントを作成し、それらを XML/JSON ファイルとして Web サーバーに投稿することができました。その後、デバイスを介して、さまざまなユーザーからのイベントなどを表示できました。
全体を構築するというアイデアは、かなり基本的なものでした。アプリケーションが初めて起動されたとき、アプリケーションは URL に接続し、ユーザー ID (ユーザーごとに一意) を要求しました。次に、ユーザーが何かを投稿するたびに、HTTP 基本認証を使用して、ヘッダーとしてユーザー ID と、作成されたイベントに関するすべての情報を含む XML ファイルを送信しました。私はサーバー側で働いたことがないので、システム全体がどれほど安全かはわかりませんでした。
数日前、私は同じアイデアである私のアプリケーションの作業を開始したので、最初にサーバー側(php)で作業を開始しました。始める前に、私の以前のプロジェクトがどれほど安全であるかを確認したかったのですが、いかなる種類のセキュリティもなかったことにショックを受けました。簡単な Web デバッガー (スニファー) を使用するだけで、アプリケーションが接続してユーザー ID を要求する場所、データベースに送信されたすべての xml ファイルの形式、およびサーバーがどのように応答したかを確認できました。
したがって、誰かが 100 万のユーザー ID または 100 万のイベントでデータベースをあふれさせたい場合、それを行うための php スクリプトを作成するのは非常に簡単です。この場合、HTTP 基本認証を使用しました。
私の質問は、どの種類の認証を使用する必要があるかということです。そのため、サーバーとユーザーの間でどのような種類のファイルが交換されるか (XML) がわかりません。簡単なスクリプトで。
超安全なアプリケーションを構築したくはありませんが、少なくとも基本的な種類のセキュリティを備えたアプリケーションを構築したいと考えています。私は php に非常に慣れていないので、使用する必要があるセキュリティメカニズムを確認するためのリンクや、さらに良いチュートリアルを提供してください。また、以前にこのようなものを開発した場合、どのような種類のセキュリティを使用し、何を提案しますか?