com.retek.component.security
Interface AccessManager

All Known Implementing Classes:
AccessManagerImpl

public interface AccessManager

Provides the necessary methods for authentication and authorization of a user.


Method Summary
 void assertPermission(User user, java.lang.String permissionName, Application application, SecurityContext securityContext)
          Indicates whether a user is authorized for a permission on an application.
 boolean hasPermission(User user, java.lang.String permissionName, Application application, SecurityContext securityContext)
          Indicates whether a user is authorized for a permission on an application.
 User login(java.lang.String userName, java.lang.String password, DistributedContext distributedContext)
          Logs a user into the security component.
 void logout(User user)
          Logs a user out of the security component.
 

Method Detail

login

public User login(java.lang.String userName,
                  java.lang.String password,
                  DistributedContext distributedContext)
           throws RetekSecurityException,
                  javax.security.auth.login.LoginException,
                  SystemException
Logs a user into the security component. Only needs to be called once per user session.

Parameters:
userName - unique ID for the user password password for the user distributedContext client's context
Returns:
the authenticated user
Throws:
FailedLoginException - invalid username/password RetekSecurityException thrown for a variety of reasons
RetekSecurityException
javax.security.auth.login.LoginException
SystemException

logout

public void logout(User user)
            throws SystemException
Logs a user out of the security component.

Parameters:
user - user logged into the security component
Throws:
SystemException

hasPermission

public boolean hasPermission(User user,
                             java.lang.String permissionName,
                             Application application,
                             SecurityContext securityContext)
                      throws SystemException
Indicates whether a user is authorized for a permission on an application. The user must be logged in before this method is called or false will always be returned. The same permission name may be used by different applications.

Parameters:
user - authenticated user permissionName may be found in OperationPermissions application application for the requested permission securityContext use SecurityContext.EMPTY_CONTEXT if no filtering is needed
Returns:
true - user has authorization for the requested permission/application false - user does not have authorization for the requested permission/application
Throws:
SystemException

assertPermission

public void assertPermission(User user,
                             java.lang.String permissionName,
                             Application application,
                             SecurityContext securityContext)
                      throws RetekSecurityException,
                             SystemException
Indicates whether a user is authorized for a permission on an application. The user must be logged in before this method is called or a RetekSecurityException will always be thrown. The same permission name may be used by different applications.

Parameters:
user - authenticated user permissionName may be found in OperationPermissions application application for the requested permission securityContext use SecurityContext.EMPTY_CONTEXT if no filtering is needed
Throws:
RetekSecurityException - thrown if the user is not authorized for the requested permission/application
SystemException


Copyright © 2004 Retek Inc. All Rights Reserved. - Generated at Fri, 10/22/2004 07:28