@Immutable public class JWKMatcher extends Object
Supported key matching criteria:
Matching by X.509 certificate URL, thumbprint and chain is not supported.
Modifier and Type | Class and Description |
---|---|
static class |
JWKMatcher.Builder
Builder for constructing JWK matchers.
|
Constructor and Description |
---|
JWKMatcher(Set<KeyType> types,
Set<KeyUse> uses,
Set<KeyOperation> ops,
Set<Algorithm> algs,
Set<String> ids,
boolean privateOnly,
boolean publicOnly)
Deprecated.
|
JWKMatcher(Set<KeyType> types,
Set<KeyUse> uses,
Set<KeyOperation> ops,
Set<Algorithm> algs,
Set<String> ids,
boolean privateOnly,
boolean publicOnly,
int minSizeBits,
int maxSizeBits)
Deprecated.
|
JWKMatcher(Set<KeyType> types,
Set<KeyUse> uses,
Set<KeyOperation> ops,
Set<Algorithm> algs,
Set<String> ids,
boolean privateOnly,
boolean publicOnly,
int minSizeBits,
int maxSizeBits,
Set<ECKey.Curve> curves)
Deprecated.
|
JWKMatcher(Set<KeyType> types,
Set<KeyUse> uses,
Set<KeyOperation> ops,
Set<Algorithm> algs,
Set<String> ids,
boolean privateOnly,
boolean publicOnly,
int minSizeBits,
int maxSizeBits,
Set<Integer> sizesBits,
Set<ECKey.Curve> curves)
Creates a new JSON Web Key (JWK) matcher.
|
Modifier and Type | Method and Description |
---|---|
Set<Algorithm> |
getAlgorithms()
Returns the JOSE algorithms to match.
|
Set<ECKey.Curve> |
getCurves()
Returns the curves to match (for EC keys).
|
Set<String> |
getKeyIDs()
Returns the key IDs to match.
|
Set<KeyOperation> |
getKeyOperations()
Returns the key operations to match.
|
Set<Integer> |
getKeySizes()
Returns the key sizes.
|
Set<KeyType> |
getKeyTypes()
Returns the key types to match.
|
Set<KeyUse> |
getKeyUses()
Returns the public key uses to match.
|
int |
getMaxKeySize()
Returns the maximum key size.
|
int |
getMaxSize()
Deprecated.
|
int |
getMinKeySize()
Returns the minimum key size.
|
int |
getMinSize()
Deprecated.
|
boolean |
isPrivateOnly()
Returns
true if only private keys are matched. |
boolean |
isPublicOnly()
Returns
true if only public keys are matched. |
boolean |
matches(JWK key)
Returns
true if the specified JWK matches. |
String |
toString() |
@Deprecated public JWKMatcher(Set<KeyType> types, Set<KeyUse> uses, Set<KeyOperation> ops, Set<Algorithm> algs, Set<String> ids, boolean privateOnly, boolean publicOnly)
types
- The key types to match, null
if not
specified.uses
- The public key uses to match, null
if not
specified.ops
- The key operations to match, null
if not
specified.algs
- The JOSE algorithms to match, null
if not
specified.ids
- The key IDs to match, null
if not
specified.privateOnly
- If true
only private keys are
matched.publicOnly
- If true
only public keys are
matched.@Deprecated public JWKMatcher(Set<KeyType> types, Set<KeyUse> uses, Set<KeyOperation> ops, Set<Algorithm> algs, Set<String> ids, boolean privateOnly, boolean publicOnly, int minSizeBits, int maxSizeBits)
types
- The key types to match, null
if not
specified.uses
- The public key uses to match, null
if not
specified.ops
- The key operations to match, null
if not
specified.algs
- The JOSE algorithms to match, null
if not
specified.ids
- The key IDs to match, null
if not
specified.privateOnly
- If true
only private keys are
matched.publicOnly
- If true
only public keys are
matched.minSizeBits
- The minimum key size in bits, zero implies no
minimum size limit.maxSizeBits
- The maximum key size in bits, zero implies no
maximum size limit.@Deprecated public JWKMatcher(Set<KeyType> types, Set<KeyUse> uses, Set<KeyOperation> ops, Set<Algorithm> algs, Set<String> ids, boolean privateOnly, boolean publicOnly, int minSizeBits, int maxSizeBits, Set<ECKey.Curve> curves)
types
- The key types to match, null
if not
specified.uses
- The public key uses to match, null
if not
specified.ops
- The key operations to match, null
if not
specified.algs
- The JOSE algorithms to match, null
if not
specified.ids
- The key IDs to match, null
if not
specified.privateOnly
- If true
only private keys are
matched.publicOnly
- If true
only public keys are
matched.minSizeBits
- The minimum key size in bits, zero implies no
minimum size limit.maxSizeBits
- The maximum key size in bits, zero implies no
maximum size limit.curves
- The curves to match (for EC keys), null
if not specified.public JWKMatcher(Set<KeyType> types, Set<KeyUse> uses, Set<KeyOperation> ops, Set<Algorithm> algs, Set<String> ids, boolean privateOnly, boolean publicOnly, int minSizeBits, int maxSizeBits, Set<Integer> sizesBits, Set<ECKey.Curve> curves)
types
- The key types to match, null
if not
specified.uses
- The public key uses to match, null
if not
specified.ops
- The key operations to match, null
if not
specified.algs
- The JOSE algorithms to match, null
if not
specified.ids
- The key IDs to match, null
if not
specified.privateOnly
- If true
only private keys are
matched.publicOnly
- If true
only public keys are
matched.minSizeBits
- The minimum key size in bits, zero implies no
minimum size limit.maxSizeBits
- The maximum key size in bits, zero implies no
maximum size limit.sizesBits
- The key sizes in bits, null
if not
specified.curves
- The curves to match (for EC keys), null
if not specified.public Set<KeyType> getKeyTypes()
null
if not specified.public Set<KeyUse> getKeyUses()
null
if not specified.public Set<KeyOperation> getKeyOperations()
null
if not specified.public Set<Algorithm> getAlgorithms()
null
if not specified.public Set<String> getKeyIDs()
null
if not specified.public boolean isPrivateOnly()
true
if only private keys are matched.true
if only private keys are matched, else
false
.public boolean isPublicOnly()
true
if only public keys are matched.true
if only public keys are selected, else
false
.@Deprecated public int getMinSize()
getMinKeySize()
instead.public int getMinKeySize()
@Deprecated public int getMaxSize()
getMaxKeySize()
instead.public int getMaxKeySize()
public Set<Integer> getKeySizes()
null
if not specified.public Set<ECKey.Curve> getCurves()
null
if not specified.public boolean matches(JWK key)
true
if the specified JWK matches.key
- The JSON Web Key (JWK). Must not be null
.true
if the JWK matches, else false
.Copyright © 2016 Connect2id Ltd.. All rights reserved.