Class StandardIntrospectionRequest
- java.lang.Object
-
- com.authlete.common.dto.StandardIntrospectionRequest
-
- All Implemented Interfaces:
Serializable
public class StandardIntrospectionRequest extends Object implements Serializable
Request to Authlete's/api/auth/introspection/standard
API. Note that the API and/api/auth/introspection
API are different./api/auth/introspection/standard
API exists to help your authorization server provide its own introspection API which complies with RFC 7662 (OAuth 2.0 Token Introspection).parameters
(REQUIRED)-
Request parameters which comply with the introspection request defined in "2.1. Introspection Request" in RFC 7662. The following is an example value of
parameters
.token=pNj1h24a4geA_YHilxrshkRkxJDsyXBZWKp3hZ5ND7A&token_type_hint=access_token
The implementation of the introspection endpoint of your authorization server will receive an HTTP POST [RFC 7231] request with parameters in the "
application/x-www-form-urlencoded
" format. It is the entity body of the request that Authlete's/api/auth/introspection/standard
API expects as the value ofparameters
. withHiddenProperties
(OPTIONAL)-
Flag indicating whether to include hidden properties in the output.
Authlete has a mechanism whereby to associate arbitrary key-value pairs with an access token. Each key-value pair has a
hidden
attribute. By default, key-value pairs whosehidden
attribute is true are not embedded in the standard introspection output.If the
withHiddenProperties
request parameter is given and its value istrue
,/api/auth/introspection/standard
API includes all the associated key-value pairs into the output regardless of the value of thehidden
attribute. rsUri
(CONDITIONALLY REQUIRED)-
The URI of the resource server making the introspection request.
If the
rsUri
request parameter is given and the token has audience values, Authlete checks if the value of thersUri
request parameter is contained in the audience values. If not contained, Authlete generates an introspection response with theactive
property set tofalse
.The
rsUri
request parameter is required when the resource server requests a JWT introspection response, i.e., when the value of thehttpAcceptHeader
request parameter is set to"application/token-introspection+jwt"
. httpAcceptHeader
(OPTIONAL)-
The value of the HTTP
Accept
header in the introspection request.If the value of the
httpAcceptHeader
request parameter is"application/token-introspection+jwt"
, Authlete generates a JWT introspection response. See " 4. Requesting a JWT Response" of " JWT Response for OAuth Token Introspection" for more details. introspectionSignAlg
(OPTIONAL)-
The JWS
alg
algorithm for signing the introspection response. This parameter corresponds tointrospection_signed_response_alg
defined in " 6. Client Metadata" of "JWT Response for OAuth Token Introspection".The default value is
RS256
. introspectionEncryptionAlg
(OPTIONAL)-
The JWE
alg
algorithm for encrypting the introspection response. This parameter corresponds tointrospection_encrypted_response_alg
defined in "6. Client Metadata" of "JWT Response for OAuth Token Introspection".If the
introspectionEncryptionAlg
request parameter is specified, Authlete generates a JWT introspection response encrypted with the algorithm by this property and the algorithm specified by theintrospectionEncryptionEnc
request parameter. introspectionEncryptionEnc
(OPTIONAL)-
The JWE
enc
algorithm for encrypting the introspection response. This parameter corresponds tointrospection_encrypted_response_enc
defined in "6. Client Metadata" of "JWT Response for OAuth Token Introspection".The default value is
A128CBC_HS256
. sharedKeyForSign
(CONDITIONALLY REQUIRED)-
The shared key for signing the introspection response with a symmetric algorithm.
The
sharedKeyForSign
request parameter is required when the introspection response is requested to be signed with a symmetric algorithm. sharedKeyForEncryption
(CONDITIONALLY REQUIRED)-
The shared key for encrypting the introspection response with a symmetric algorithm.
The
sharedKeyForEncryption
request parameter is required when the introspection response is requested to be encrypted with a symmetric algorithm. publicKeyForEncryption
(CONDITIONALLY REQUIRED)-
The public key for signing the introspection response with an asymmetric algorithm.
The
publicKeyForEncryption
request parameter is required when the introspection response is requested to be encrypted with an asymmetric algorithm.
- Since:
- 2.7
- Author:
- Takahiko Kawasaki, Hideki Ikeda
- See Also:
- RFC 7662, OAuth 2.0 Token Introspection,
JWT Response for OAuth Token Introspection,
StandardIntrospectionResponse
,AuthleteApi.standardIntrospection(StandardIntrospectionRequest)
, Serialized Form
-
-
Constructor Summary
Constructors Constructor Description StandardIntrospectionRequest()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getHttpAcceptHeader()
Get the value of the HTTPAccept
header in the introspection request.JWEAlg
getIntrospectionEncryptionAlg()
Get the JWEalg
algorithm for encrypting the introspection response.JWEEnc
getIntrospectionEncryptionEnc()
Get the JWEenc
algorithm for encrypting the introspection response.JWSAlg
getIntrospectionSignAlg()
Get the JWSalg
algorithm for signing the introspection response.String
getParameters()
Get the value ofparameters
that represents the request parameters which the introspection endpoint of the authorization server received.String
getPublicKeyForEncryption()
Get the public key for encrypting the introspection response with an asymmetric algorithm.URI
getRsUri()
Get the URI of the resource server making the introspection request.String
getSharedKeyForEncryption()
Get the shared key for encrypting the introspection response with a symmetric algorithm.String
getSharedKeyForSign()
Get the shared key for signing the introspection response with a symmetric algorithm.boolean
isWithHiddenProperties()
Get the flag which indicates whether to include hidden properties associated with the token in the output.StandardIntrospectionRequest
setHttpAcceptHeader(String header)
Set the value of the HTTPAccept
header in the introspection request.StandardIntrospectionRequest
setIntrospectionEncryptionAlg(JWEAlg alg)
Set the JWEalg
algorithm for encrypting the introspection response.StandardIntrospectionRequest
setIntrospectionEncryptionEnc(JWEEnc enc)
Set the JWEenc
algorithm for encrypting the introspection response.StandardIntrospectionRequest
setIntrospectionSignAlg(JWSAlg alg)
Set the JWSalg
algorithm for signing the introspection response.StandardIntrospectionRequest
setParameters(String parameters)
Set the value ofparameters
that represents the request parameters which the introspection endpoint of the authorization server received.StandardIntrospectionRequest
setPublicKeyForEncryption(String key)
Set the public key for encrypting the introspection response with an asymmetric algorithm.StandardIntrospectionRequest
setRsUri(URI uri)
Set the URI of the resource server making the introspection request.StandardIntrospectionRequest
setSharedKeyForEncryption(String key)
Set the shared key for encrypting the introspection response with a symmetric algorithm.StandardIntrospectionRequest
setSharedKeyForSign(String key)
Set the shared key for signing the introspection response with a symmetric algorithm.StandardIntrospectionRequest
setWithHiddenProperties(boolean with)
Set the flag which indicates whether to include hidden properties associated with the token in the output.
-
-
-
Method Detail
-
getParameters
public String getParameters()
Get the value ofparameters
that represents the request parameters which the introspection endpoint of the authorization server received.- Returns:
- Request parameters which comply with RFC 7662.
For example, "
token=pNj1h24a4geA_YHilxrshkRkxJDsyXBZWKp3hZ5ND7A
".
-
setParameters
public StandardIntrospectionRequest setParameters(String parameters)
Set the value ofparameters
that represents the request parameters which the introspection endpoint of the authorization server received.- Parameters:
parameters
- Request parameters which comply with RFC 7662. For example, "token=pNj1h24a4geA_YHilxrshkRkxJDsyXBZWKp3hZ5ND7A
".- Returns:
this
object.
-
isWithHiddenProperties
public boolean isWithHiddenProperties()
Get the flag which indicates whether to include hidden properties associated with the token in the output.Authlete has a mechanism whereby to associate arbitrary key-value pairs with an access token. Each key-value pair has a
hidden
attribute. By default, key-value pairs whosehidden
attribute is true are not embedded in the standard introspection output.If the
withHiddenProperties
request parameter is given and its value istrue
,/api/auth/introspection/standard
API includes all the associated key-value pairs into the output regardless of the value of thehidden
attribute.- Returns:
true
if hidden properties are included in the output.- Since:
- 2.83
-
setWithHiddenProperties
public StandardIntrospectionRequest setWithHiddenProperties(boolean with)
Set the flag which indicates whether to include hidden properties associated with the token in the output.See the description of
isWithHiddenProperties()
for details.- Parameters:
with
-true
to include hidden properties in the output.- Returns:
this
object.- Since:
- 2.83
-
getRsUri
public URI getRsUri()
Get the URI of the resource server making the introspection request.- Returns:
- The URI of the resource server making the introspection request.
- Since:
- 3.76, Authlete 3.0
-
setRsUri
public StandardIntrospectionRequest setRsUri(URI uri)
Set the URI of the resource server making the introspection request.- Parameters:
rsUri
- The URI of the resource server making the introspection request.- Returns:
this
object.- Since:
- 3.76, Authlete 3.0
-
getHttpAcceptHeader
public String getHttpAcceptHeader()
Get the value of the HTTPAccept
header in the introspection request.- Returns:
- The value of the HTTP
Accept
header in the introspection request. - Since:
- 3.76, Authlete 3.0
-
setHttpAcceptHeader
public StandardIntrospectionRequest setHttpAcceptHeader(String header)
Set the value of the HTTPAccept
header in the introspection request.- Parameters:
header
- The value of the HTTPAccept
header in the introspection request.- Returns:
this
object.- Since:
- 3.76, Authlete 3.0
-
getIntrospectionSignAlg
public JWSAlg getIntrospectionSignAlg()
Get the JWSalg
algorithm for signing the introspection response. This property corresponds tointrospection_signed_response_alg
defined in " 6. Client Metadata" of " JWT Response for OAuth Token Introspection".- Returns:
- The JWS
alg
algorithm for signing the introspection response. - Since:
- 3.76, Authlete 3.0
- See Also:
- JWT Response for OAuth Token Introspection
-
setIntrospectionSignAlg
public StandardIntrospectionRequest setIntrospectionSignAlg(JWSAlg alg)
Set the JWSalg
algorithm for signing the introspection response. This property corresponds tointrospection_signed_response_alg
defined in " 6. Client Metadata" of " JWT Response for OAuth Token Introspection".- Parameters:
alg
- The JWSalg
algorithm for signing the introspection response.- Returns:
this
object.- Since:
- 3.76, Authlete 3.0
- See Also:
- JWT Response for OAuth Token Introspection
-
getIntrospectionEncryptionAlg
public JWEAlg getIntrospectionEncryptionAlg()
Get the JWEalg
algorithm for encrypting the introspection response. This property corresponds tointrospection_encrypted_response_alg
defined in " 6. Client Metadata" of " JWT Response for OAuth Token Introspection".- Returns:
- The JWE
alg
algorithm for encrypting the introspection response. - Since:
- 3.76, Authlete 3.0
- See Also:
- JWT Response for OAuth Token Introspection
-
setIntrospectionEncryptionAlg
public StandardIntrospectionRequest setIntrospectionEncryptionAlg(JWEAlg alg)
Set the JWEalg
algorithm for encrypting the introspection response. This property corresponds tointrospection_encrypted_response_alg
defined in " 6. Client Metadata" of " JWT Response for OAuth Token Introspection".- Parameters:
alg
- The JWEalg
algorithm for encrypting the introspection response.- Returns:
this
object.- Since:
- 3.76, Authlete 3.0
- See Also:
- JWT Response for OAuth Token Introspection
-
getIntrospectionEncryptionEnc
public JWEEnc getIntrospectionEncryptionEnc()
Get the JWEenc
algorithm for encrypting the introspection response. This property corresponds tointrospection_encrypted_response_enc
defined in " 6. Client Metadata" of " JWT Response for OAuth Token Introspection".- Returns:
- The JWE
enc
algorithm for encrypting the introspection response. - Since:
- 3.76, Authlete 3.0
- See Also:
- JWT Response for OAuth Token Introspection
-
setIntrospectionEncryptionEnc
public StandardIntrospectionRequest setIntrospectionEncryptionEnc(JWEEnc enc)
Set the JWEenc
algorithm for encrypting the introspection response. This property corresponds tointrospection_encrypted_response_enc
defined in " 6. Client Metadata" of " JWT Response for OAuth Token Introspection".- Parameters:
enc
- The JWEenc
algorithm for encrypting the introspection response.- Returns:
this
object.- Since:
- 3.76, Authlete 3.0
- See Also:
- JWT Response for OAuth Token Introspection
-
getSharedKeyForSign
public String getSharedKeyForSign()
Get the shared key for signing the introspection response with a symmetric algorithm.- Returns:
- The shared key for signing the introspection response with a symmetric algorithm.
- Since:
- 3.76, Authlete 3.0
- See Also:
- JWT Response for OAuth Token Introspection
-
setSharedKeyForSign
public StandardIntrospectionRequest setSharedKeyForSign(String key)
Set the shared key for signing the introspection response with a symmetric algorithm.- Parameters:
key
- The shared key for signing the introspection response with a symmetric algorithm.- Returns:
this
object.- Since:
- 3.76, Authlete 3.0
- See Also:
- JWT Response for OAuth Token Introspection
-
getSharedKeyForEncryption
public String getSharedKeyForEncryption()
Get the shared key for encrypting the introspection response with a symmetric algorithm.- Returns:
- The shared key for encrypting the introspection response with a symmetric algorithm.
- Since:
- 3.76, Authlete 3.0
- See Also:
- JWT Response for OAuth Token Introspection
-
setSharedKeyForEncryption
public StandardIntrospectionRequest setSharedKeyForEncryption(String key)
Set the shared key for encrypting the introspection response with a symmetric algorithm.- Parameters:
key
- The shared key for encrypting the introspection response with a symmetric algorithm.- Returns:
this
object.- Since:
- 3.76, Authlete 3.0
- See Also:
- JWT Response for OAuth Token Introspection
-
getPublicKeyForEncryption
public String getPublicKeyForEncryption()
Get the public key for encrypting the introspection response with an asymmetric algorithm.- Returns:
- The public key for encrypting the introspection response with an asymmetric algorithm.
- Since:
- 3.76, Authlete 3.0
- See Also:
- JWT Response for OAuth Token Introspection
-
setPublicKeyForEncryption
public StandardIntrospectionRequest setPublicKeyForEncryption(String key)
Set the public key for encrypting the introspection response with an asymmetric algorithm.- Parameters:
key
- The public key for encrypting the introspection response with an asymmetric algorithm.- Returns:
this
object.- Since:
- 3.76, Authlete 3.0
- See Also:
- JWT Response for OAuth Token Introspection
-
-