public interface JwtBuilder extends ClaimsMutator<JwtBuilder>
| Modifier and Type | Method and Description |
|---|---|
JwtBuilder |
claim(String name,
Object value)
Sets a custom JWT Claims parameter value.
|
String |
compact()
Actually builds the JWT and serializes it to a compact, URL-safe string according to the
JWT Compact Serialization
rules.
|
JwtBuilder |
setAudience(String aud)
Sets the JWT Claims
aud (audience) value. |
JwtBuilder |
setClaims(Claims claims)
Sets the JWT payload to be a JSON Claims instance.
|
JwtBuilder |
setClaims(Map<String,Object> claims)
Sets the JWT payload to be a JSON Claims instance populated by the specified name/value pairs.
|
JwtBuilder |
setExpiration(Date exp)
Sets the JWT Claims
exp (expiration) value. |
JwtBuilder |
setHeader(Header header)
Sets (and replaces) any existing header with the specified header.
|
JwtBuilder |
setHeader(Map<String,Object> header)
Sets (and replaces) any existing header with the specified header.
|
JwtBuilder |
setHeaderParam(String name,
Object value)
Applies the specified name/value pair to the header.
|
JwtBuilder |
setHeaderParams(Map<String,Object> params)
Applies the specified name/value pairs to the header.
|
JwtBuilder |
setId(String jti)
Sets the JWT Claims
jti (JWT ID) value. |
JwtBuilder |
setIssuedAt(Date iat)
Sets the JWT Claims
iat (issued at) value. |
JwtBuilder |
setIssuer(String iss)
Sets the JWT Claims
iss (issuer) value. |
JwtBuilder |
setNotBefore(Date nbf)
Sets the JWT Claims
nbf (not before) value. |
JwtBuilder |
setPayload(String payload)
Sets the JWT's payload to be a plaintext (non-JSON) string.
|
JwtBuilder |
setSubject(String sub)
Sets the JWT Claims
sub (subject) value. |
JwtBuilder |
signWith(SignatureAlgorithm alg,
byte[] secretKey)
Signs the constructed JWT using the specified algorithm with the specified key, producing a JWS.
|
JwtBuilder |
signWith(SignatureAlgorithm alg,
Key key)
Signs the constructed JWT using the specified algorithm with the specified key, producing a JWS.
|
JwtBuilder |
signWith(SignatureAlgorithm alg,
String base64EncodedSecretKey)
Signs the constructed JWT using the specified algorithm with the specified key, producing a JWS.
|
JwtBuilder setHeader(Header header)
setHeaderParams(java.util.Map) method instead.header - the header to set (and potentially replace any existing header).JwtBuilder setHeader(Map<String,Object> header)
setHeaderParams(java.util.Map) method instead.header - the header to set (and potentially replace any existing header).JwtBuilder setHeaderParams(Map<String,Object> params)
params - the header name/value pairs to append to the header.JwtBuilder setHeaderParam(String name, Object value)
name - the header parameter namevalue - the header parameter valueJwtBuilder setPayload(String payload)
setClaims(Claims) or setClaims(java.util.Map) methods instead.
The payload and claims properties are mutually exclusive - only one of the two may be used.
payload - the plaintext (non-JSON) string that will be the body of the JWT.JwtBuilder setClaims(Claims claims)
setPayload(String) method instead.
The payload and claims properties are mutually exclusive - only one of the two may be used.
claims - the JWT claims to be set as the JWT body.JwtBuilder setClaims(Map<String,Object> claims)
setPayload(String)
method instead.
The payload* and claims* properties are mutually exclusive - only one of the two may be used.
claims - the JWT claims to be set as the JWT body.JwtBuilder setIssuer(String iss)
iss (issuer) value. A null value will remove the property from the Claims.
This is a convenience method. It will first ensure a Claims instance exists as the JWT body and then set
the Claims issuer field with the specified value. This allows you to write
code like this:
String jwt = Jwts.builder().setIssuer("Joe").compact();
instead of this:
Claims claims = Jwts.claims().setIssuer("Joe");
String jwt = Jwts.builder().setClaims(claims).compact();
if desired.
setIssuer in interface ClaimsMutator<JwtBuilder>iss - the JWT iss value or null to remove the property from the Claims map.JwtBuilder setSubject(String sub)
sub (subject) value. A null value will remove the property from the Claims.
This is a convenience method. It will first ensure a Claims instance exists as the JWT body and then set
the Claims subject field with the specified value. This allows you to write
code like this:
String jwt = Jwts.builder().setSubject("Me").compact();
instead of this:
Claims claims = Jwts.claims().setSubject("Me");
String jwt = Jwts.builder().setClaims(claims).compact();
if desired.
setSubject in interface ClaimsMutator<JwtBuilder>sub - the JWT sub value or null to remove the property from the Claims map.JwtBuilder setAudience(String aud)
aud (audience) value. A null value will remove the property from the Claims.
This is a convenience method. It will first ensure a Claims instance exists as the JWT body and then set
the Claims audience field with the specified value. This allows you to write
code like this:
String jwt = Jwts.builder().setAudience("You").compact();
instead of this:
Claims claims = Jwts.claims().setSubject("You");
String jwt = Jwts.builder().setClaims(claims).compact();
if desired.
setAudience in interface ClaimsMutator<JwtBuilder>aud - the JWT aud value or null to remove the property from the Claims map.JwtBuilder setExpiration(Date exp)
exp (expiration) value. A null value will remove the property from the Claims.
A JWT obtained after this timestamp should not be used.
This is a convenience method. It will first ensure a Claims instance exists as the JWT body and then set
the Claims expiration field with the specified value. This allows
you to write code like this:
String jwt = Jwts.builder().setExpiration(new Date(System.currentTimeMillis() + 3600000)).compact();
instead of this:
Claims claims = Jwts.claims().setExpiration(new Date(System.currentTimeMillis() + 3600000)); String jwt = Jwts.builder().setClaims(claims).compact();
if desired.
setExpiration in interface ClaimsMutator<JwtBuilder>exp - the JWT exp value or null to remove the property from the Claims map.JwtBuilder setNotBefore(Date nbf)
nbf (not before) value. A null value will remove the property from the Claims.
A JWT obtained before this timestamp should not be used.
This is a convenience method. It will first ensure a Claims instance exists as the JWT body and then set
the Claims notBefore field with the specified value. This allows
you to write code like this:
String jwt = Jwts.builder().setNotBefore(new Date()).compact();
instead of this:
Claims claims = Jwts.claims().setNotBefore(new Date()); String jwt = Jwts.builder().setClaims(claims).compact();
if desired.
setNotBefore in interface ClaimsMutator<JwtBuilder>nbf - the JWT nbf value or null to remove the property from the Claims map.JwtBuilder setIssuedAt(Date iat)
iat (issued at) value. A null value will remove the property from the Claims.
The value is the timestamp when the JWT was created.
This is a convenience method. It will first ensure a Claims instance exists as the JWT body and then set
the Claims issuedAt field with the specified value. This allows
you to write code like this:
String jwt = Jwts.builder().setIssuedAt(new Date()).compact();
instead of this:
Claims claims = Jwts.claims().setIssuedAt(new Date()); String jwt = Jwts.builder().setClaims(claims).compact();
if desired.
setIssuedAt in interface ClaimsMutator<JwtBuilder>iat - the JWT iat value or null to remove the property from the Claims map.JwtBuilder setId(String jti)
jti (JWT ID) value. A null value will remove the property from the Claims.
The value is a CaSe-SenSiTiVe unique identifier for the JWT. If specified, this value MUST be assigned in a manner that ensures that there is a negligible probability that the same value will be accidentally assigned to a different data object. The ID can be used to prevent the JWT from being replayed.
This is a convenience method. It will first ensure a Claims instance exists as the JWT body and then set
the Claims id field with the specified value. This allows
you to write code like this:
String jwt = Jwts.builder().setId(UUID.randomUUID().toString()).compact();
instead of this:
Claims claims = Jwts.claims().setIssuedAt(UUID.randomUUID().toString()); String jwt = Jwts.builder().setClaims(claims).compact();
if desired.
setId in interface ClaimsMutator<JwtBuilder>jti - the JWT jti (id) value or null to remove the property from the Claims map.JwtBuilder claim(String name, Object value)
null value will remove the property from the Claims.
This is a convenience method. It will first ensure a Claims instance exists as the JWT body and then set the
named property on the Claims instance using the Claims put method. This allows
you to write code like this:
String jwt = Jwts.builder().claim("aName", "aValue").compact();
instead of this:
Claims claims = Jwts.claims().put("aName", "aValue");
String jwt = Jwts.builder().setClaims(claims).compact();
if desired.
name - the JWT Claims property namevalue - the value to set for the specified Claims property nameJwtBuilder signWith(SignatureAlgorithm alg, byte[] secretKey)
alg - the JWS algorithm to use to digitally sign the JWT, thereby producing a JWS.secretKey - the algorithm-specific signing key to use to digitally sign the JWT.JwtBuilder signWith(SignatureAlgorithm alg, String base64EncodedSecretKey)
This is a convenience method: the string argument is first BASE64-decoded to a byte array and this resulting
byte array is used to invoke signWith(SignatureAlgorithm, byte[]).
alg - the JWS algorithm to use to digitally sign the JWT, thereby producing a JWS.base64EncodedSecretKey - the BASE64-encoded algorithm-specific signing key to use to digitally sign the
JWT.JwtBuilder signWith(SignatureAlgorithm alg, Key key)
alg - the JWS algorithm to use to digitally sign the JWT, thereby producing a JWS.key - the algorithm-specific signing key to use to digitally sign the JWT.String compact()
Copyright © 2014. All rights reserved.