Package com.auth0.jwt
Class JWTCreator.Builder
- java.lang.Object
-
- com.auth0.jwt.JWTCreator.Builder
-
- Enclosing class:
- JWTCreator
public static class JWTCreator.Builder extends Object
The Builder class holds the Claims that defines the JWT to be created.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
sign(Algorithm algorithm)
Creates a new JWT and signs is with the given algorithmJWTCreator.Builder
withArrayClaim(String name, Integer[] items)
Add a custom Array Claim with the given items.JWTCreator.Builder
withArrayClaim(String name, Long[] items)
Add a custom Array Claim with the given items.JWTCreator.Builder
withArrayClaim(String name, String[] items)
Add a custom Array Claim with the given items.JWTCreator.Builder
withAudience(String... audience)
Add a specific Audience ("aud") claim to the Payload.JWTCreator.Builder
withClaim(String name, Boolean value)
Add a custom Claim value.JWTCreator.Builder
withClaim(String name, Double value)
Add a custom Claim value.JWTCreator.Builder
withClaim(String name, Integer value)
Add a custom Claim value.JWTCreator.Builder
withClaim(String name, Long value)
Add a custom Claim value.JWTCreator.Builder
withClaim(String name, String value)
Add a custom Claim value.JWTCreator.Builder
withClaim(String name, Date value)
Add a custom Claim value.JWTCreator.Builder
withExpiresAt(Date expiresAt)
Add a specific Expires At ("exp") claim to the Payload.JWTCreator.Builder
withHeader(Map<String,Object> headerClaims)
Add specific Claims to set as the Header.JWTCreator.Builder
withIssuedAt(Date issuedAt)
Add a specific Issued At ("iat") claim to the Payload.JWTCreator.Builder
withIssuer(String issuer)
Add a specific Issuer ("iss") claim to the Payload.JWTCreator.Builder
withJWTId(String jwtId)
Add a specific JWT Id ("jti") claim to the Payload.JWTCreator.Builder
withKeyId(String keyId)
Add a specific Key Id ("kid") claim to the Header.JWTCreator.Builder
withNotBefore(Date notBefore)
Add a specific Not Before ("nbf") claim to the Payload.JWTCreator.Builder
withSubject(String subject)
Add a specific Subject ("sub") claim to the Payload.
-
-
-
Method Detail
-
withHeader
public JWTCreator.Builder withHeader(Map<String,Object> headerClaims)
Add specific Claims to set as the Header.- Parameters:
headerClaims
- the values to use as Claims in the token's Header.- Returns:
- this same Builder instance.
-
withKeyId
public JWTCreator.Builder withKeyId(String keyId)
Add a specific Key Id ("kid") claim to the Header. If theAlgorithm
used to sign this token was instantiated with a KeyProvider, the 'kid' value will be taken from that provider and this one will be ignored.- Parameters:
keyId
- the Key Id value.- Returns:
- this same Builder instance.
-
withIssuer
public JWTCreator.Builder withIssuer(String issuer)
Add a specific Issuer ("iss") claim to the Payload.- Parameters:
issuer
- the Issuer value.- Returns:
- this same Builder instance.
-
withSubject
public JWTCreator.Builder withSubject(String subject)
Add a specific Subject ("sub") claim to the Payload.- Parameters:
subject
- the Subject value.- Returns:
- this same Builder instance.
-
withAudience
public JWTCreator.Builder withAudience(String... audience)
Add a specific Audience ("aud") claim to the Payload.- Parameters:
audience
- the Audience value.- Returns:
- this same Builder instance.
-
withExpiresAt
public JWTCreator.Builder withExpiresAt(Date expiresAt)
Add a specific Expires At ("exp") claim to the Payload.- Parameters:
expiresAt
- the Expires At value.- Returns:
- this same Builder instance.
-
withNotBefore
public JWTCreator.Builder withNotBefore(Date notBefore)
Add a specific Not Before ("nbf") claim to the Payload.- Parameters:
notBefore
- the Not Before value.- Returns:
- this same Builder instance.
-
withIssuedAt
public JWTCreator.Builder withIssuedAt(Date issuedAt)
Add a specific Issued At ("iat") claim to the Payload.- Parameters:
issuedAt
- the Issued At value.- Returns:
- this same Builder instance.
-
withJWTId
public JWTCreator.Builder withJWTId(String jwtId)
Add a specific JWT Id ("jti") claim to the Payload.- Parameters:
jwtId
- the Token Id value.- Returns:
- this same Builder instance.
-
withClaim
public JWTCreator.Builder withClaim(String name, Boolean value) throws IllegalArgumentException
Add a custom Claim value.- Parameters:
name
- the Claim's name.value
- the Claim's value.- Returns:
- this same Builder instance.
- Throws:
IllegalArgumentException
- if the name is null.
-
withClaim
public JWTCreator.Builder withClaim(String name, Integer value) throws IllegalArgumentException
Add a custom Claim value.- Parameters:
name
- the Claim's name.value
- the Claim's value.- Returns:
- this same Builder instance.
- Throws:
IllegalArgumentException
- if the name is null.
-
withClaim
public JWTCreator.Builder withClaim(String name, Long value) throws IllegalArgumentException
Add a custom Claim value.- Parameters:
name
- the Claim's name.value
- the Claim's value.- Returns:
- this same Builder instance.
- Throws:
IllegalArgumentException
- if the name is null.
-
withClaim
public JWTCreator.Builder withClaim(String name, Double value) throws IllegalArgumentException
Add a custom Claim value.- Parameters:
name
- the Claim's name.value
- the Claim's value.- Returns:
- this same Builder instance.
- Throws:
IllegalArgumentException
- if the name is null.
-
withClaim
public JWTCreator.Builder withClaim(String name, String value) throws IllegalArgumentException
Add a custom Claim value.- Parameters:
name
- the Claim's name.value
- the Claim's value.- Returns:
- this same Builder instance.
- Throws:
IllegalArgumentException
- if the name is null.
-
withClaim
public JWTCreator.Builder withClaim(String name, Date value) throws IllegalArgumentException
Add a custom Claim value.- Parameters:
name
- the Claim's name.value
- the Claim's value.- Returns:
- this same Builder instance.
- Throws:
IllegalArgumentException
- if the name is null.
-
withArrayClaim
public JWTCreator.Builder withArrayClaim(String name, String[] items) throws IllegalArgumentException
Add a custom Array Claim with the given items.- Parameters:
name
- the Claim's name.items
- the Claim's value.- Returns:
- this same Builder instance.
- Throws:
IllegalArgumentException
- if the name is null.
-
withArrayClaim
public JWTCreator.Builder withArrayClaim(String name, Integer[] items) throws IllegalArgumentException
Add a custom Array Claim with the given items.- Parameters:
name
- the Claim's name.items
- the Claim's value.- Returns:
- this same Builder instance.
- Throws:
IllegalArgumentException
- if the name is null.
-
withArrayClaim
public JWTCreator.Builder withArrayClaim(String name, Long[] items) throws IllegalArgumentException
Add a custom Array Claim with the given items.- Parameters:
name
- the Claim's name.items
- the Claim's value.- Returns:
- this same Builder instance.
- Throws:
IllegalArgumentException
- if the name is null.
-
sign
public String sign(Algorithm algorithm) throws IllegalArgumentException, JWTCreationException
Creates a new JWT and signs is with the given algorithm- Parameters:
algorithm
- used to sign the JWT- Returns:
- a new JWT token
- Throws:
IllegalArgumentException
- if the provided algorithm is null.JWTCreationException
- if the claims could not be converted to a valid JSON or there was a problem with the signing key.
-
-