我尝试将token_ttl
限制的值更改为lexik_jwt_authentication.yaml
文件,但是无论我设置的值如何,生成的令牌始终具有3600秒的TTL。我还设置了参数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
是否可以通过yaml conf文件更改令牌TTL?
编辑:
这里是一个生成的令牌示例,该令牌带有使用记录的方法(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
预先感谢
答案 0 :(得分:4)
我刚刚意识到我定义了自己的令牌创建动作,调用:
$this->get("lexik_jwt_authentication.encoder")->encode(array("username" => $username, "exp" => $expirationTime));
所以没有问题! (唯一的问题可能是在椅子和屏幕之间:))。抱歉,@ AythaNzt仍然感谢您的回复。
答案 1 :(得分:2)
您可能正在生产模式下工作,因此必须清除缓存。
执行:
或将APP_ENV值更改为dev。