2017-03-16 8 views
0

APIを保護する方法を理解するためには助けが必要です。トークンを使用した安全なWeb API

私は、JSONレスポンスのRESTful APIに基づいたプロジェクトに取り組んでいます。プロトコル(GET、POST、PUT、およびDELETE)、最終的にパラメータを持つ

http://my-server.com/api/v1/products 

は、私は、Webアプリケーションおよびモバイルアプリケーションのようにリクエストを送信しています。

私の懸念は、これらの呼び出しを両方のアプリケーションから保護することです。これはAjaxのコールの場合 今日は、私はちょうどチェックしています:

$method = $_SERVER['REQUEST_METHOD']; 

    if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') 
    { 
     if ($method == 'GET') 
     { 
      return $data = $this->stores_model->get_all($select); 
     } 
    } 

しかし、モバイル、右のXMLHttpRequestを送信しませんか?

セッションに格納されているトークンを確認する必要があると思います。私はCSRFトークンに関するいくつかの点を見て、毎回再生しています。

これは私がセキュリティについて知っているすべてです。私のアーキテクチャについてもっと理解するにはどうすればいいですか?

答えて

0

これは非常に深いトピックですが、まずサーバーにSSLをインストールする必要があります。私はこれがセキュリティの出発点だと思う。

JavaScriptおよびブラウザクライアントの場合は、APIでcorsを有効にすることができます。 cors hereについて詳しく知ることができます。

アプリケーションクライアントの場合は、OAuthを実装することが考えられます。 OAuth   2は広く実装されていますが、OAuth  と一緒に行くこともできます。1.相違点を確認し、どちらがあなたのプロジェクトに適しているかを確認します。それらについての良い比較hereを見つけることができます。そこに彼らの良い実装があるので、それらをチェックしてください。 OAuth 2の1つの例

+0

私はoauth2を少し読んでいますが、これは良いスタートポイントと思われます;) ありがとう – Bobyblanco

関連する問題