Я использую JWT для RESTful API (Laravel Web-Services для мобильных устройств). Как установить срок действия токена, чтобы никогда не истекать, или что лучше всего подходит для истечения срока действия токена? Поскольку в настоящее время мне нужно получить токен каждый раз, когда истек срок действия токена, может ли кто-нибудь получить эту проблему или лучшее решение для истечения срока действия токена.RESTful API с использованием JWT (токена токена JSON) срок действия токена
ответ
Нет ничего, чтобы токен никогда не истекал. Однако вы можете продлить срок действия до очень большого промежутка времени, например, 1 год. Это возможно, однако это не рекомендуется для обеспечения безопасности.
Для этого вам необходимо настроить две части, время обновления токена и срок действия токена.
Так config/jwt.php
'refresh_ttl' => 29030400, // Number of minutes in 1 year (12*4*7*24*60*60)
И когда вы создаете свой маркер, вы можете передать что-то вроде следующего
$tokenId = base64_encode(mcrypt_create_iv(32, MCRYPT_DEV_URANDOM));
$issuedAt = Carbon::now()->timestamp;
$notBefore = $issuedAt; //Adding 10 seconds
$expire = $notBefore + 12*4*7*24*60*60; // Adding 6 hours
/*
* Create the token as an array
*/
$data = [
'iat' => $issuedAt, // Issued at: time when the token was generated
'jti' => $tokenId, // Json Token Id: an unique identifier for the token
'iss' => 'https://example.com', // Issuer
'nbf' => $notBefore, // Not before
'exp' => $expire, // Expire
'data' => [ // Data related to the signed user
'userId' => Auth::user()->id, // userid from the users table
]
];
Теперь ваш маркер никогда не истекает до 1 года. И у вас есть до 1 года, чтобы обновить его. Когда пользователь в следующий раз откроет приложение и аутентифицирует токен, вы можете его обновить. Вы можете обновить токен, как указано в документации here. Я бы рекомендовал пройти через этот ларакаст discussion.
Кроме того, я нашел это question на StackOverflow, я думаю, это поможет.
Могу ли я настроить сообщение с истекшим сроком действия в веб-службе от Authenticacontroller, например, я хочу показать сообщение в массиве с успехом = 0 и msg = токен истек, пожалуйста, войдите снова – Tarzan
- 1. Срок действия токена безопасности
- 2. Срок действия токена пользователя Facebook
- 3. Срок действия токена доступа Google
- 4. Срок действия токена биллингового соглашения
- 5. Срок действия токена Google OAuth
- 6. Срок действия токена олицетворения Windows
- 7. Срок действия токена доступа Facebook
- 8. Bitbucket API Срок действия токена доступа
- 9. OAuth2 Срок действия токена WebApi
- 10. OAuth - Срок действия токена доступа?
- 11. Срок действия токена в Twilio
- 12. Срок действия токена доступа истек?
- 13. Срок действия токена доступа/обновление
- 14. Срок действия токена ADFS 2.0
- 15. Facebook API PHP и срок действия токена
- 16. Срок действия токена OAuth в приложении MVC6
- 17. От токена facebook до токена jwt
- 18. Истекает срок годности токена
- 19. Срок обновления токена API VSTS
- 20. JWT/Laravel Продление срока действия токена
- 21. Как указать срок действия идентификатора токена Google?
- 22. Дизайн для токена JWT
- 23. Расширение токена доступа Срок действия не работает
- 24. Срок действия токена доступа приложения Facebook истекает?
- 25. JWT аутентификация и обновление токена обновления
- 26. Срок действия токена доступа во время загрузки
- 27. Весна Безопасность продлевает срок годности токена JWT для каждого запроса
- 28. Срок действия токена доступа к странице Facebook
- 29. Срок действия токена доступа GitLab OAuth
- 30. Как продлить срок действия токена доступа?
Не могли бы вы предоставить более подробную информацию, например, используете Angular.js, что такое прецедент? –
Я не использую Angular.js, просто Jwt-auth используется для restful-api. я просто хочу, чтобы стандартный способ обработки времени истечения токена. потому что мои услуги созданы для мобильных пользователей. –