Class WLAuthorizationManager
WLAuthorizationManager
- JavaScript File:
-
wlauthorizationmanager.js
- Description:
- The
WLAuthorizationManager
class is instantiated as a singleton and can be used anywhere in the application
to obtain the client ID and authorization header. It is also called internally to handle MobileFirst OAuth-based security model protocol.
All functions of the authorization manager are asynchronous and return a promise object.
TheĀ WLAuthorizationManager
andĀ WLResourceRequest
classes are supported for the following environments only:
Android, iOS, Windows 8.1, Window 10 UWP and Web.
Constructor Summary
Constructor Attributes |
Constructor Name and Description |
|
|
Method Summary
Method Attributes |
Method Name and Description |
|
Clears the provided access token.
|
|
Retrieves the URL of the authorization server.
|
|
Returns the scope of the protected resource for the provided response headers.
|
|
Checks whether the provided response status and headers represent a protected resource that requires authorization.
|
|
login(securityCheck, credentials)
Logs into the specified security check.
|
|
Logs out of the specified security check.
|
|
Obtains an access token for the specified resource scope from the MobileFirst authorization server.
|
|
Sets the URL of the authorization server.
|
Constructor Detail
WLAuthorizationManager
WLAuthorizationManager()
Method Detail
clearAccessToken
clearAccessToken(accessToken)
Clears the provided access token.
.
Note: When failing to access a resource with an obtained token, call the {@code clearAccessToken} method to clear the
invalid token before calling
#obtainAccessToken(String) to obtain a new access token.
- Parameters:
-
{Object}
accessToken
- Mandatory - Access token to clear.
- Returns:
- A promise object.
getAuthorizationServerUrl
{, }
getAuthorizationServerUrl()
Retrieves the URL of the authorization server.
- Returns:
- Returns the URL of the current authorization server, as a String.
- A promise object.
getResourceScope
getResourceScope(responseHeaders)
Returns the scope of the protected resource for the provided response headers.
Note: Call this method only for response headers for which {@link #isAuthorizationRequired(int, Map)}
returns {@code true}, indicating that the resource is protected.
- Parameters:
-
{String}
responseHeaders
- Mandatory. A String representation of the response headers separated by CRLF, as returned from XMLHttpRequest.getAllResponseHeaders().
- Returns:
- The protecting scope of the target resource, as returned in the {@code WWW-Authenticate} HTTP response header.
isAuthorizationRequired
isAuthorizationRequired(responseStatus, responseHeaders)
Checks whether the provided response status and headers represent a protected resource that requires authorization.
- Parameters:
-
{Integer}
responseStatus
- Mandatory. Specifies the response status code.
-
{String}
responseHeaders
- Mandatory. A String representation of the response headers separated by CRLF, as returned from XMLHttpRequest.getAllResponseHeaders().
- Returns:
- A boolean value, indicating whether authorization is required (
true
), or not (false
).
login
login(securityCheck, credentials)
Logs into the specified security check.
- Parameters:
-
{String}
securityCheck
- Mandatory. Name of the security check to log into.
-
{Object}
credentials
- Mandatory. Credentials for logging into the specified security check.
- Returns:
- A promise object that can be used to login asynchronously.
logout
logout(securityCheck)
Logs out of the specified security check.
- Parameters:
-
{String}
securityCheck
- Mandatory. Name of the security check to log out of.
- Returns:
- A promise object that can be used to logout asynchronously.
obtainAccessToken
obtainAccessToken(scope)
Obtains an access token for the specified resource scope from the MobileFirst authorization server.
- Parameters:
-
{String}
scope
- Optional. Scope for which to obtain the access token.
- Returns:
- A promise object that can be used to receive the access token asynchronously.
The access token is sent as an object with the following properties:
scope - the scope which the access token was obtained for.
value - the access token value.
asAuthorizationRequestHeaderField - the access token value required for an authorization header.
asFormEncodedBodyParameter - the access token value required for the HTTP-request entity body.
- Example:
WLAuthorizationManager.obtainAccessToken(scope)
.then (
function(accessToken) {
// success flow with the access token
},
function(error) {
// failure flow
}
);
setAuthorizationServerUrl
setAuthorizationServerUrl(url)
Sets the URL of the authorization server.
When this method is not called, the MobileFirst Server URL is used.
- Parameters:
-
{String}
url
- Mandatory. URL of the authorization server to set.
- Returns:
- A promise object.
© Copyright IBM Corp. 2011, 2016.