Symfony 4 - Lexik/JwtAuthenticationBundle - Невозможно изменить значение по умолчанию token_ttl

Я пытаюсь изменить значение token_ttl ограничить в lexik_jwt_authentication.yaml файл, но независимо от того, какое значение я установил, сгенерированный токен всегда имеет TTL 3600 секунд. Я также установил параметры secret_key а также public_key и они правильно истолкованы.

Содержание моего lexik_jwt_authentication.yaml является:

lexik_jwt_authentication:
    secret_key: '%kernel.project_dir%/config/jwt/private.pem'
    public_key: '%kernel.project_dir%/config/jwt/public.pem'
    pass_phrase: 'jwtpass'
    token_ttl: 7200                            

Я использовал документацию здесь: https://github.com/lexik/LexikJWTAuthenticationBundle/blob/master/Resources/doc/1-configuration-reference.md#full-default-configuration.

Есть ли способ изменить TTL токена из файла конфигурации yaml?

Редактировать:

вот пример сгенерированного токена с совершенно новыми открытыми / закрытыми ключами, сгенерированными с использованием документированного метода ( https://github.com/lexik/LexikJWTAuthenticationBundle/blob/master/Resources/doc/index.md#generate-the-ssh-keys-):

eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE1NTA5MzAzNTIsImV4cCI6MTU1MDkzMzk1MiwidXNlcm5hbWUiOiJwYXJpc191c2VyQGNvbnRhY3QuY29tIn0.bUMkgNnzntDxga7Zz5nb2zAN2RUw5-jmVLPt9SECUxkXAjPBkB4W5vIFpkPKkPDdHL6qngGAq6rdgRxXur63YdnyDkkmE4dHbq9CVT38VvMszBR15TDavGkQxTdlBGDAqkft9pe72U_ipJYbbULYdTH6qvcXILTUOpZXfK2XRMsKFWilRZNQkeg7S-rISBb6VCSf-yEZjikwiNKfcexlrbs4PmfeK7oMYg1aN0JmTtmxQpikaRdbh8pd1wYm-_0mikr_Z9MSS24GYa2jys5q0TKpZMzibYie125faC6CU_63odlAjaIW66ZAeJsdQwiRZtNQzMEmzrfrxWtOhNqYjhM3KfVNR-x4tc5CaHzCWSUtXLOkvqMXCDjc9FIKQbXjA71UzvWwBnmwBlSxE63V6s8aamqG_N7mMUc2J--MxozrBynZmZIDFOT2dsHI6iiVBhgNhfhvhr4yTnW2GTQMPdOfgL-enagimrTUmGLA90h7e8h-osfkhv5qY0Omstqar9BCwzCabnh_j0enf3nmvgWAhc2MHbBlCcUnJYJQzMqdW_Pk9nmNePEetlbyrpVU7y_D_e1IAaafIMp0JJ4d5s6w5r31u0oYqYF3Vqh86Mp1cp99F6BcqBf03VvE1VWKeGATutTPKJfS93LspuDP7OcbJk2P3eG7Sxi2v4Y_gF0

заранее спасибо

2 ответа

Я только что понял, что определил свое собственное действие по созданию токена, вызвав:

$this->get("lexik_jwt_authentication.encoder")->encode(array("username" => $username, "exp" => $expirationTime));

Так что нет проблем! (возможно, единственная проблема - между стулом и экраном:)). Извините за это и @AythaNzt спасибо за ваш ответ в любом случае.

Вы, вероятно, работаете в режиме Prod, поэтому вы должны очистить кеш.

Выполнение:

  • php bin / console cache: очистить --no-warmup --env = prod
  • php bin / console cache: warmup --env = prod

Или измените значение APP_ENV на dev.

Другие вопросы по тегам