AuthorizationErrorResponse
, AuthorizationSuccessResponse
public abstract class AuthorizationResponse extends Object implements Response
Related specifications:
Modifier | Constructor | Description |
---|---|---|
protected |
AuthorizationResponse(URI redirectURI,
com.nimbusds.jwt.JWT jwtResponse,
ResponseMode rm) |
Creates a new JSON Web Token (JWT) secured authorisation response.
|
protected |
AuthorizationResponse(URI redirectURI,
State state,
ResponseMode rm) |
Creates a new authorisation response.
|
Modifier and Type | Method | Description |
---|---|---|
com.nimbusds.jwt.JWT |
getJWTResponse() |
Returns the JSON Web Token (JWT) secured response.
|
URI |
getRedirectionURI() |
Returns the base redirection URI.
|
ResponseMode |
getResponseMode() |
Returns the optional explicit response mode.
|
State |
getState() |
Returns the optional state.
|
abstract ResponseMode |
impliedResponseMode() |
Determines the implied response mode.
|
static AuthorizationResponse |
parse(HTTPRequest httpRequest) |
Parses an authorisation response from the specified HTTP request at
the client redirection (callback) URI.
|
static AuthorizationResponse |
parse(HTTPRequest httpRequest,
JARMValidator jarmValidator) |
Parses and validates a JSON Web Token (JWT) secured authorisation
response from the specified HTTP request at the client redirection
(callback) URI.
|
static AuthorizationResponse |
parse(HTTPResponse httpResponse) |
Parses an authorisation response from the specified initial HTTP 302
redirect response output at the authorisation endpoint.
|
static AuthorizationResponse |
parse(HTTPResponse httpResponse,
JARMValidator jarmValidator) |
Parses and validates a JSON Web Token (JWT) secured authorisation
response from the specified initial HTTP 302 redirect response
output at the authorisation endpoint.
|
static AuthorizationResponse |
parse(URI uri) |
Parses an authorisation response.
|
static AuthorizationResponse |
parse(URI uri,
JARMValidator jarmValidator) |
Parses and validates a JSON Web Token (JWT) secured authorisation
response.
|
static AuthorizationResponse |
parse(URI redirectURI,
Map<String,List<String>> params) |
Parses an authorisation response.
|
static AuthorizationResponse |
parse(URI redirectURI,
Map<String,List<String>> params,
JARMValidator jarmValidator) |
Parses an authorisation response which may be JSON Web Token (JWT)
secured.
|
static Map<String,List<String>> |
parseResponseParameters(HTTPRequest httpRequest) |
Parses the relevant authorisation response parameters.
|
static Map<String,List<String>> |
parseResponseParameters(URI uri) |
Parses the relevant authorisation response parameters.
|
AuthorizationErrorResponse |
toErrorResponse() |
Casts this response to an authorisation error response.
|
HTTPRequest |
toHTTPRequest() |
Returns an HTTP request for this authorisation response.
|
HTTPResponse |
toHTTPResponse() |
Returns an HTTP response for this authorisation response.
|
abstract Map<String,List<String>> |
toParameters() |
Returns the parameters of this authorisation response.
|
AuthorizationSuccessResponse |
toSuccessResponse() |
Casts this response to an authorisation success response.
|
URI |
toURI() |
Returns a URI representation (redirection URI + fragment / query
string) of this authorisation response.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
indicatesSuccess
protected AuthorizationResponse(URI redirectURI, State state, ResponseMode rm)
redirectURI
- The base redirection URI. Must not be
null
.state
- The state, null
if not requested.rm
- The response mode, null
if not specified.protected AuthorizationResponse(URI redirectURI, com.nimbusds.jwt.JWT jwtResponse, ResponseMode rm)
redirectURI
- The base redirection URI. Must not be
null
.jwtResponse
- The JWT response. Must not be null
.rm
- The response mode, null
if not specified.public URI getRedirectionURI()
public State getState()
null
if not requested or if the response
is JWT-secured in which case the state parameter may be
included as a JWT claim.public com.nimbusds.jwt.JWT getJWTResponse()
null
for a regular
authorisation response.public ResponseMode getResponseMode()
null
if not specified.public abstract ResponseMode impliedResponseMode()
public abstract Map<String,List<String>> toParameters()
Example parameters (authorisation success):
access_token = 2YotnFZFEjr1zCsicMWpAA state = xyz token_type = example expires_in = 3600
public URI toURI()
Example URI:
http://example.com/cb#access_token=2YotnFZFEjr1zCsicMWpAA &state=xyz &token_type=example &expires_in=3600
public HTTPResponse toHTTPResponse()
query
or fragment
response mode using HTTP 302
redirection.
Example HTTP response (authorisation success):
HTTP/1.1 302 Found Location: http://example.com/cb#access_token=2YotnFZFEjr1zCsicMWpAA &state=xyz &token_type=example &expires_in=3600
toHTTPResponse
in interface Response
toHTTPRequest()
public HTTPRequest toHTTPRequest()
form_post
response mode.
Example HTTP request (authorisation success):
GET /cb?code=SplxlOBeZQQYbYS6WxSbIA&state=xyz HTTP/1.1 Host: client.example.com
toHTTPResponse()
public AuthorizationSuccessResponse toSuccessResponse()
public AuthorizationErrorResponse toErrorResponse()
public static AuthorizationResponse parse(URI redirectURI, Map<String,List<String>> params) throws ParseException
redirectURI
- The base redirection URI. Must not be
null
.params
- The response parameters to parse. Must not be
null
.ParseException
- If the parameters couldn't be parsed to an
authorisation success or error response.public static AuthorizationResponse parse(URI redirectURI, Map<String,List<String>> params, JARMValidator jarmValidator) throws ParseException
redirectURI
- The base redirection URI. Must not be
null
.params
- The response parameters to parse. Must not be
null
.jarmValidator
- The validator of JSON Web Token (JWT) secured
authorisation responses (JARM), null
if
a plain response is expected.ParseException
- If the parameters couldn't be parsed to an
authorisation success or error response, or
if validation of the JWT secured response
failed.public static AuthorizationResponse parse(URI uri) throws ParseException
Use a relative URI if the host, port and path details are not known:
URI relUrl = new URI("https:///?code=Qcb0Orv1...&state=af0ifjsldkj");
uri
- The URI to parse. Can be absolute or relative, with a
fragment or query string containing the authorisation
response parameters. Must not be null
.ParseException
- If no authorisation response parameters were
found in the URL.public static AuthorizationResponse parse(URI uri, JARMValidator jarmValidator) throws ParseException
Use a relative URI if the host, port and path details are not known:
URI relUrl = new URI("https:///?response=eyJhbGciOiJSUzI1NiIsI...");
uri
- The URI to parse. Can be absolute or relative,
with a fragment or query string containing the
authorisation response parameters. Must not be
null
.jarmValidator
- The validator of JSON Web Token (JWT) secured
authorisation responses (JARM). Must not be
null
.ParseException
- If no authorisation response parameters were
found in the URL of if validation of the JWT
response failed.public static AuthorizationResponse parse(HTTPResponse httpResponse) throws ParseException
Example HTTP response (authorisation success):
HTTP/1.1 302 Found Location: https://client.example.com/cb?code=SplxlOBeZQQYbYS6WxSbIA&state=xyz
httpResponse
- The HTTP response to parse. Must not be
null
.ParseException
- If the HTTP response couldn't be parsed to an
authorisation response.parse(HTTPRequest)
public static AuthorizationResponse parse(HTTPResponse httpResponse, JARMValidator jarmValidator) throws ParseException
Example HTTP response (authorisation success):
HTTP/1.1 302 Found Location: https://client.example.com/cb?response=eyJhbGciOiJSUzI1...
httpResponse
- The HTTP response to parse. Must not be
null
.jarmValidator
- The validator of JSON Web Token (JWT) secured
authorisation responses (JARM). Must not be
null
.ParseException
- If the HTTP response couldn't be parsed to an
authorisation response or if validation of
the JWT response failed.parse(HTTPRequest)
public static AuthorizationResponse parse(HTTPRequest httpRequest) throws ParseException
query
,
fragment
and form_post
response modes.
Example HTTP request (authorisation success):
GET /cb?code=SplxlOBeZQQYbYS6WxSbIA&state=xyz HTTP/1.1 Host: client.example.com
httpRequest
- The HTTP request to parse. Must not be
null
.ParseException
- If the HTTP request couldn't be parsed to an
authorisation response.parse(HTTPResponse)
public static AuthorizationResponse parse(HTTPRequest httpRequest, JARMValidator jarmValidator) throws ParseException
query.jwt
,
fragment.jwt
and form_post.jwt
response modes.
Example HTTP request (authorisation success):
GET /cb?response=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9... HTTP/1.1 Host: client.example.com
httpRequest
- The HTTP request to parse. Must not be
null
.jarmValidator
- The validator of JSON Web Token (JWT) secured
authorisation responses (JARM). Must not be
null
.ParseException
- If the HTTP request couldn't be parsed to an
authorisation response or if validation of
the JWT response failed.parse(HTTPResponse)
public static Map<String,List<String>> parseResponseParameters(URI uri) throws ParseException
uri
- The URI to parse its query or fragment parameters. Must
not be null
.ParseException
- If parsing failed.public static Map<String,List<String>> parseResponseParameters(HTTPRequest httpRequest) throws ParseException
httpRequest
- The HTTP request. Must not be null
.ParseException
- If parsing failed.Copyright © 2019 Connect2id Ltd.. All rights reserved.