2016-04-14 2 views
0

Я использую систему веб-маркеров JWT. Я смог успешно сгенерировать TOKENS. Я создаю JWT маркеры в Laravel следующим- токен Jwt был UNIQUE

Я ИСПОЛЬЗУЮ СЛЕДУЮЩИЙ ТЕХНОЛОГИИ СТОГ

ОБРАЗЦА КОДА

use JWTAuth; 
use Tymon\JWTAuth\Exceptions\JWTException; 

class AuthenticateController extends Controller 
{ 
    public function authenticate(Request $request) 
    { 
     // grab credentials from the request 
     $credentials = $request->only('email', 'password'); 

     try { 
      // attempt to verify the credentials and create a token for the user 
      if (! $token = JWTAuth::attempt($credentials)) { 
       return response()->json(['error' => 'invalid_credentials'], 401); 
      } 
     } catch (JWTException $e) { 
      // something went wrong whilst attempting to encode the token 
      return response()->json(['error' => 'could_not_create_token'], 500); 
     } 

     // all good so return the token 
     return response()->json(compact('token')); 
    } 
} 

SAMPLE OUTPUT

Я ПОЛУЧЕНИЕ

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ 

ВОПРОС 1

ли сгенерированный маркер УНИКАЛЬНО?

ответ

0

JWT уникален тем образом, что никакие две одинаковых пользователей не могут иметь один и тот же маркер, сгенерированный для них

+0

Как JWT маркер был уникального т.е. на какие параметры маркеров были UNIQUE (независимо от его из-за HEADER или ПОЛЕЗНЫЙ или ПОДПИСЬ) ? – lakshmaji

+0

Полезная нагрузка заголовка и подпись вместе составляют токен. У вас нет реальной проблемы с безопасностью, если кто-то находит одну часть всего токена. Но заголовок один и тот же, два других изменения. Проверьте [link] (https://jwt.io/) и попытайтесь изменить значения и посмотреть, что произойдет – Norgul

+0

Как я могу сделать токен пользователя действительным в течение периода между успешным логином и выходом из системы? – lakshmaji

1

В целом, JWT фактически заменяет комбинацию имени пользователя и пароля. Это означает, что вместо того, чтобы отправлять имя пользователя и пароль для каждого запроса для ограниченных ресурсов, сервер будет возвращать уникальный токен после проверки правильности учетных данных при первом входе пользователя в систему. Впоследствии каждый запрос будет включать токен, который будет проверен как действительный или нет до выполнения запроса.

Итак, если два пользователя вошли и вошли в систему с двумя действительными учетными данными, он получит два разных токена с сервера.

Смежные вопросы