2016-03-31 15 views
0

私は、各リクエストのヘッダーにトークンを渡すことで、今度はAngularでJSON Webトークンを使用しています。これは、これを使用して私のすべてのアプリケーションに最適です。AngularとJWT

私の質問は、ヘッダーに渡される必要がありますか?私はそれがおそらくこの方法でより安全だと知っていますが、要求がhttpsを介して行われた場合は、それをGETまたはPOSTパラメータとして設定すれば十分でしょうか?

+0

あなたは好きなように(ヘッダー、クッキー、クエリー文字列、ポストボディ、キャリーハト)サーバーに送信できます。ヘッダーを使って何が間違っているのか不思議です。オプションから、それは最もエレガントな/安全なようだ。 –

答えて

0

いいえ、ヘッダーにある必要はありませんが、そうすることで、セキュリティを損なうことなく簡単に要求の種類を保持できます。

GETリクエストを作成する場合は、JWTをURLに渡さないでください。トラフィックを監視するだけで(リクエストが実際には表示されず)、より簡単に傍受される可能性があります。 GETリクエストをPOSTリクエストにしてJWTをペイロードに入れることができますが、それはベストプラクティスから離れていく異なるリクエストタイプの目的を破ります。

POSTとPUTリクエストが安全で、GETリクエストがすべて開いている場合は、JWTをペイロードに送信できます。後で(あなたも含めて)あなたのコードに出会った人は困惑するかもしれませんが、技術的な理由がなく、セキュリティは同じです。

+0

私はこのすべてに同意しています。しかし、私は、最近、ヘッダーがトークンを転送するために必要ではないということを説明しているいくつかの人々を見てきましたが、どうして私が尋ねると思ったのですか?ポストプロパティ。 – Rob

+0

GETリクエストにはペイロードがないため、すべてのリクエストタイプで一貫性のあるオプションは、(i)ヘッダーまたは(ii)リクエストURLだけです。要求URLはHTTPSでも仲介者が見ることができるので、すべての要求タイプに渡ってヘッダーオプションだけが残っています。 – tyler