2016-07-11 5 views
1

私はJWTトークンを認証目的の有効期限とともに作成しました。 毎回 URLがアプリケーションにヒットすると、私はトークンをチェックしています。 JWTトークンの有効期限を延長したい。以下は私のやり方です。トークンの作成中にすでに設定されている有効期限をとることで、トークンの有効期限が切れています。JWTトークンの有効期限をリセットするにはどうすればよいですか?

//creating JWT token only once when user logged in 

String jwtToken = new String(Jwts.builder().setSubject(user.getUserId()) 
        .setExpiration(expTime).setIssuedAt(new Date()) 
        .signWith(SignatureAlgorithm.HS256, "secretkey").compact()); 

// checking the presence of token every time 

Claims claims = Jwts.parser().setSigningKey("secretkey") 
          .parseClaimsJws(jwtToken).getBody(); 

claims.setExpiration(time); // trying to reset the expiration time 

I don't know what's going wrong. Any help would be much appreciated. 

答えて

2

トークンを再作成する必要があります。トークン内のすべての情報が署名され、トークン内の値に応じてトークンが一意になります。あなたがトークンから引き出す主張を変更することは何もしません。

関連する問題