The Java Authorization Contract for Containers (JACC) is a new specification that is introduced in Java 2 Platform, Enterprise Edition (J2EE) Version 1.4 through the Java Specifications Request (JSR) 115 process. This specification defines a contract between J2EE containers and authorization providers.
The contract enables third-party authorization providers to plug into J2EE 1.4 application servers, such as WebSphere Application Server, to make the authorization decisions when a J2EE resource is accessed. The access decisions are made through the standard java.security.Policy object.
In WebSphere Application Server, two authorization contracts are supported using both a native and a third-party JACC provider implementation.
To plug in to the WebSphere Application Server, the third-party JACC provider must implement the policy class, policy configuration factory class, and policy configuration interface, which are required by the JACC specification.
The JACC specification does not specify how to handle the authorization table information between the container and the provider. It is the responsibility of the provider to provide some management facilities to handle this information. The container is not required to provide the authorization table information in the binding file to the provider.
WebSphere Application Server provides the RoleConfigurationFactory and RoleConfiguration role configuration interfaces to help the provider obtain information from the binding file, as well as an initialization interface (InitializeJACCProvider). The implementation of these interfaces is optional. See Interfaces that support JACC for more information about these interfaces.
Tivoli Access Manager as the default JACC provider for WebSphere Application Server
The JACC provider in WebSphere Application Server is implemented by both the client and the server pieces of the Tivoli Access Manager. The client piece of Tivoli Access Manager is embedded in WebSphere Application Server. The server is located on a separate installable CD that is shipped as part of the WebSphere Application Server Network Deployment (ND) package.
The JACC provider is not a default solution. You must configure WebSphere Application Server to use the JACC provider.