增加从 Ory Hydra 生成的 OAuth 访问令牌的到期时间
Increase expiration time of OAuth access token generated from Ory Hydra
我正在按照本教程使用 JWKS 验证 JWT 令牌
Article
但是生成的access_token expires in 60 minutes.I 对于Junit 测试用例需要将这个过期时间增加到10 年。
我尝试在更改配置后生成令牌 (Documentation),但生成的令牌仍将在 60 分钟后过期。
重现步骤 -
- git 克隆 https://github.com/ory/hydra.git
- cd 到 hydra 目录
docker-compose -f quickstart.yml \
-f quickstart-jwt.yml \
up --build
docker-compose -f quickstart.yml exec hydra \
hydra clients create \
--endpoint http://127.0.0.1:4445/ \
--id my-client \
--secret secret \
-g client_credentials
curl -s -k -X POST \
-H "Content-Type: application/x-www-form-urlencoded" \
-d grant_type=client_credentials \
-u 'my-client:secret' \
http://localhost:4444/oauth2/token
在最后一部分我们得到了access_token。
回应-
{ "access_token":"eyJhbGciOiJSUzI1NiIsImtpZCI6InB1YmxpYzpmMGZiNWQ5MC0wZGEwLTQ5ZDMtYTgzYS1jYmE0YWIzOWNkNjcifQ.eyJhdWQiOltdLCJjbGllbnRfaWQiOiJteS1jbGllbnQiLCJleHAiOjE2NDM0MDA0MDUsImV4dCI6e30sImlhdCI6MTY0MzM5NjgwNSwiaXNzIjoiaHR0cDovLzEyNy4wLjAuMTo0NDQ0LyIsImp0aSI6IjIwODE3OGE2LWI2OTYtNDVhMy05Mjg5LWVjODA0ZTAzMzNkNSIsIm5iZiI6MTY0MzM5NjgwNSwic2NwIjpbXSwic3ViIjoibXktY2xpZW50In0.RwHKP5mdwBIKO5qnYExXEDKjn4P7G6QuQw4YcR3HYdtG5DYh87EEixPXekAcSjB7y1wqHoMJ4NDtIr6AVu66JU9RXOI0vZT66uXIGauRPQdAt-BAYy0J4oalBzX-TWIbXP-rojVFuiKsroS7ugGm1dC-kHuo0Sqv_h1rTX4rQxQVhqLh-vvYWssDBHNFHHbS1i2lK2Dw8GUeAqM4ZUJLDb1Wytro4ke45y6FnkJuYO3IZpmHg0iq7tj161I5hM0fAdFJGpoqP9VI5DwiuRICr9mbEnnxb6yqLaSrZU0bqq-zHNpw1JW3oTCqHcC_NznAQ1M2UCLpIQ6EH0FIQ3kq42HyD08qPAEYYUAmGcuVcqdv2W9adgESiqGYmfvIaD_x_9CI-ZtFv64liH15-o-1SW_8WVuuIluaoXAd-sJK1tgH5R-ezW-9ZLgRztF1F3e9czu0BYMAVg2coUea0rc6wcgSpEXyWE1NMNlafjQZVfcrhXyk6wKiL3aQWUoDrCUY2xhjsZKIo4wfRpB58STSGxe_TpCZoVOfrz_XhVpD7f-H2z9IaDMQTAWOOJbOousb2b8cCwE0R0jCeamuCe1N3mHE9dlqL5yVpY0EQeWmaEB1y9b6oUjszxvZ6DdEzrKTE9SKyROokJr-ximKVRHt8THD7a1jJAuer7S1sBdavKQ",
"expires_in":3599,
"scope":"",
"token_type":"bearer"
}
请告诉我如何增加此令牌到期时间 (expires_in)。
在 services.hydra.environment 下的 quickstart-jwt.yml 中将环境变量 TTL_ACCESS_TOKEN 添加到所需的增加值并在第 3 步之前保存文件(即在启动 hydra 服务器之前)。
参考:https://www.ory.sh/hydra/docs/guides/token-expiration/#access-token-expiration
我正在按照本教程使用 JWKS 验证 JWT 令牌 Article
但是生成的access_token expires in 60 minutes.I 对于Junit 测试用例需要将这个过期时间增加到10 年。 我尝试在更改配置后生成令牌 (Documentation),但生成的令牌仍将在 60 分钟后过期。
重现步骤 -
- git 克隆 https://github.com/ory/hydra.git
- cd 到 hydra 目录
docker-compose -f quickstart.yml \
-f quickstart-jwt.yml \
up --build
docker-compose -f quickstart.yml exec hydra \
hydra clients create \
--endpoint http://127.0.0.1:4445/ \
--id my-client \
--secret secret \
-g client_credentials
curl -s -k -X POST \
-H "Content-Type: application/x-www-form-urlencoded" \
-d grant_type=client_credentials \
-u 'my-client:secret' \
http://localhost:4444/oauth2/token
在最后一部分我们得到了access_token。 回应-
{ "access_token":"eyJhbGciOiJSUzI1NiIsImtpZCI6InB1YmxpYzpmMGZiNWQ5MC0wZGEwLTQ5ZDMtYTgzYS1jYmE0YWIzOWNkNjcifQ.eyJhdWQiOltdLCJjbGllbnRfaWQiOiJteS1jbGllbnQiLCJleHAiOjE2NDM0MDA0MDUsImV4dCI6e30sImlhdCI6MTY0MzM5NjgwNSwiaXNzIjoiaHR0cDovLzEyNy4wLjAuMTo0NDQ0LyIsImp0aSI6IjIwODE3OGE2LWI2OTYtNDVhMy05Mjg5LWVjODA0ZTAzMzNkNSIsIm5iZiI6MTY0MzM5NjgwNSwic2NwIjpbXSwic3ViIjoibXktY2xpZW50In0.RwHKP5mdwBIKO5qnYExXEDKjn4P7G6QuQw4YcR3HYdtG5DYh87EEixPXekAcSjB7y1wqHoMJ4NDtIr6AVu66JU9RXOI0vZT66uXIGauRPQdAt-BAYy0J4oalBzX-TWIbXP-rojVFuiKsroS7ugGm1dC-kHuo0Sqv_h1rTX4rQxQVhqLh-vvYWssDBHNFHHbS1i2lK2Dw8GUeAqM4ZUJLDb1Wytro4ke45y6FnkJuYO3IZpmHg0iq7tj161I5hM0fAdFJGpoqP9VI5DwiuRICr9mbEnnxb6yqLaSrZU0bqq-zHNpw1JW3oTCqHcC_NznAQ1M2UCLpIQ6EH0FIQ3kq42HyD08qPAEYYUAmGcuVcqdv2W9adgESiqGYmfvIaD_x_9CI-ZtFv64liH15-o-1SW_8WVuuIluaoXAd-sJK1tgH5R-ezW-9ZLgRztF1F3e9czu0BYMAVg2coUea0rc6wcgSpEXyWE1NMNlafjQZVfcrhXyk6wKiL3aQWUoDrCUY2xhjsZKIo4wfRpB58STSGxe_TpCZoVOfrz_XhVpD7f-H2z9IaDMQTAWOOJbOousb2b8cCwE0R0jCeamuCe1N3mHE9dlqL5yVpY0EQeWmaEB1y9b6oUjszxvZ6DdEzrKTE9SKyROokJr-ximKVRHt8THD7a1jJAuer7S1sBdavKQ",
"expires_in":3599,
"scope":"",
"token_type":"bearer"
}
请告诉我如何增加此令牌到期时间 (expires_in)。
在 services.hydra.environment 下的 quickstart-jwt.yml 中将环境变量 TTL_ACCESS_TOKEN 添加到所需的增加值并在第 3 步之前保存文件(即在启动 hydra 服务器之前)。
参考:https://www.ory.sh/hydra/docs/guides/token-expiration/#access-token-expiration