2016-12-07 18 views
1

反応ネイティブプロジェクトでJWT認証を取得して実行しています。今私が作るすべてのリクエストで、トークンはauthorizationというヘッダーに含まれます。その後、サーバはそのuser.idに基づいて私を認識しますJson Webトークンを偽装したり偽装することはできますか?

{ sub: user.id, iat: timestamp, email: user.email } 

:サーバーは私のトークンを受信したときに、私の理解に

は、次のようにデコードされます。

しかし、ヘッダーにはトークンしか含まれていないので、ヘッダーにはuserIdはありません。サーバーは、私が実際にそのIDを持っていることをどのように知ることができますか?ハッカーが私のトークンを手に入れたとしたら、彼は私のように偽装してサーバーに話すことができますか?

+0

[JSON Webトークン(JWT)を理解するための5つの簡単な手順](https://medium.com/vandium-software/5-easy-steps-to-understanding-json-web-tokens-jwt-1164c0adfcec#。 jeug98kir) –

答えて

2

このようなトークンが通過中に盗まれるのを防ぐ通常の方法は、トランスポートレベルのセキュリティ、特にSSLによるものです。トークンが2つのシステム間で交換される前に、HTTPS接続が最初にに設定されます。

Token Binding ProtocolProof Key for Code Exchange by OAuth Public Clientsのように、トークンの盗難を防止するために使用できる他の解決策があります。

追加のセキュリティを提供するために、トークンはしばしば時間制限があります。 Reference Tokensは、タイムアウトするのを待たずに要求に応じて取り消すことができます。

関連する問題