Class S256PkceGenerator
- java.lang.Object
-
- io.micronaut.security.oauth2.endpoint.authorization.pkce.S256PkceGenerator
-
- All Implemented Interfaces:
io.micronaut.core.naming.Named,io.micronaut.core.order.Ordered,PkceGenerator
@Named("S256") @Singleton @Requires(condition=Sha256Condition.class) public class S256PkceGenerator extends java.lang.Object implements PkceGeneratorSHA-256 based PKCE Generator.- Since:
- 3.9.0
- See Also:
- xProof Key for Code Exchange by OAuth Public Clients (RFC 7636), Section 4.3
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringCODE_CHALLENGE_METHOD_S256static java.lang.IntegerORDER
-
Constructor Summary
Constructors Constructor Description S256PkceGenerator(CodeVerifierGenerator codeVerifierGenerator)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Pkcegenerate()java.lang.StringgetName()intgetOrder()static java.lang.Stringhash(java.lang.String value)booleansupportsAny(java.util.List<java.lang.String> codeChallengeMethods)
-
-
-
Field Detail
-
ORDER
public static final java.lang.Integer ORDER
-
CODE_CHALLENGE_METHOD_S256
public static final java.lang.String CODE_CHALLENGE_METHOD_S256
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
S256PkceGenerator
public S256PkceGenerator(CodeVerifierGenerator codeVerifierGenerator)
- Parameters:
codeVerifierGenerator- Code Verifier generator
-
-
Method Detail
-
getName
@NonNull public java.lang.String getName()
- Specified by:
getNamein interfaceio.micronaut.core.naming.Named
-
getOrder
public int getOrder()
- Specified by:
getOrderin interfaceio.micronaut.core.order.Ordered
-
supportsAny
public boolean supportsAny(@NonNull java.util.List<java.lang.String> codeChallengeMethods)- Specified by:
supportsAnyin interfacePkceGenerator- Parameters:
codeChallengeMethods- Code Challenge methods- Returns:
- Whether the PKCE Generator supports any of the supplied code challenge methods.
-
generate
@NonNull public Pkce generate()
- Specified by:
generatein interfacePkceGenerator- Returns:
- Generates a
Pkce.
-
hash
@NonNull public static java.lang.String hash(@NonNull java.lang.String value)- Parameters:
value- Value to be hashed- Returns:
- a hash build with algorithm SHA-256
-
-