Added token refresh

This commit is contained in:
Luca Frosini 2021-12-13 13:27:07 +01:00
parent 74e83aee69
commit 4b3867f085
1 changed files with 3 additions and 1 deletions

View File

@ -16,6 +16,7 @@ import org.gcube.common.authorization.library.utils.Caller;
import org.gcube.common.authorization.utils.clientid.RenewalProvider;
import org.gcube.common.authorization.utils.user.KeycloakUser;
import org.gcube.common.authorization.utils.user.User;
import org.gcube.common.keycloak.KeycloakClientFactory;
import org.gcube.common.keycloak.model.AccessToken;
import org.gcube.common.keycloak.model.RefreshToken;
import org.gcube.common.keycloak.model.util.Time;
@ -51,7 +52,8 @@ public class JWTSecret extends Secret {
if(Time.currentTimeMillis()>=(accessToken.getExp()-TOLERANCE)) {
expired = true;
if(refreshToken!=null) {
// TODO refresh
ObjectMapper mapper = new ObjectMapper();
KeycloakClientFactory.newInstance().refreshToken(getUsername(), mapper.writeValueAsString(refreshToken));
expired = false;
}
}