org.opencms.security
Interface I_CmsAuthorizationHandler

All Known Implementing Classes:
A_CmsAuthorizationHandler, CmsDefaultAuthorizationHandler

public interface I_CmsAuthorizationHandler

Defines general authorization methods.

One of the application scenarios for this interface is a personalized SSO implementation.

Since:
6.5.4

Nested Class Summary
static interface I_CmsAuthorizationHandler.I_PrivilegedLoginAction
          Class providing the privileged login action.
 
Method Summary
 java.lang.String getLoginFormURL(java.lang.String loginFormURL, java.lang.String params, java.lang.String callbackURL)
          Returns the full URL used to call a login form with additional parameters and a callbackURL.
 CmsObject initCmsObject(javax.servlet.http.HttpServletRequest request)
          Creates a new cms object from the given request object.
 CmsObject initCmsObject(javax.servlet.http.HttpServletRequest request, I_CmsAuthorizationHandler.I_PrivilegedLoginAction loginAction)
          Creates a new cms object from the given request object.
 CmsObject initCmsObject(javax.servlet.http.HttpServletRequest request, java.lang.String userName, java.lang.String pwd)
          Authenticates the current request with additional user information.
 void requestAuthorization(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res, java.lang.String loginFormURL)
          This method sends a request to the client to display a login form, it is needed for HTTP-Authentication.
 void setParameters(java.util.Map<java.lang.String,java.lang.String> parameters)
          Sets parameters which can be configured additionally for an authorization handler.
 

Method Detail

getLoginFormURL

java.lang.String getLoginFormURL(java.lang.String loginFormURL,
                                 java.lang.String params,
                                 java.lang.String callbackURL)
Returns the full URL used to call a login form with additional parameters and a callbackURL.

Parameters:
loginFormURL - the form URL specified in the cms (either as a property or system-wide)
params - additional parameters to provide to the login form
callbackURL - the call-back URL to redirect after a successful login
Returns:
the full URL used to call a login form

initCmsObject

CmsObject initCmsObject(javax.servlet.http.HttpServletRequest request)
Creates a new cms object from the given request object.

This method is called by OpenCms every time a resource is requested and the session can not automatically be authenticated.

Parameters:
request - the HTTP request to authenticate
Returns:
the cms context object associated to the current session

initCmsObject

CmsObject initCmsObject(javax.servlet.http.HttpServletRequest request,
                        I_CmsAuthorizationHandler.I_PrivilegedLoginAction loginAction)
Creates a new cms object from the given request object.

This method is called by OpenCms every time a resource is requested and the session can not automatically be authenticated.

Parameters:
request - the HTTP request to authenticate
loginAction - the privileged login action
Returns:
the cms context object associated to the current session

initCmsObject

CmsObject initCmsObject(javax.servlet.http.HttpServletRequest request,
                        java.lang.String userName,
                        java.lang.String pwd)
                        throws CmsException
Authenticates the current request with additional user information.

You have to call this method by your own.

Parameters:
request - the HTTP request to authenticate
userName - the user name to authenticate
pwd - the user password to authenticate with
Returns:
the cms context object associated to the given user
Throws:
CmsException - if something goes wrong

requestAuthorization

void requestAuthorization(javax.servlet.http.HttpServletRequest req,
                          javax.servlet.http.HttpServletResponse res,
                          java.lang.String loginFormURL)
                          throws java.io.IOException
This method sends a request to the client to display a login form, it is needed for HTTP-Authentication.

Parameters:
req - the client request
res - the response
loginFormURL - the full URL used for form based authentication
Throws:
java.io.IOException - if something goes wrong

setParameters

void setParameters(java.util.Map<java.lang.String,java.lang.String> parameters)
Sets parameters which can be configured additionally for an authorization handler.

Parameters:
parameters - the map of parameters