TAM security for WAS
WAS provides embedded IBM Tivoli Access Manager (TAM) client technology to secure WAS-managed resources.
The benefits of using TAM clients..
- Container-based authorization
- Centralized policy management
- Management of common identities, user profiles, and authorization mechanisms
- Single-point security management for Java EE compliant and non-compliant Java EE resources using the admin console for TAM Web Portal Manager
- No requirements for coding or deployment changes to applications
- Easy management of users, groups, and roles using the WAS admin console
WAS supports the Java Authorization Contract for Containers (JACC) specification which details the contract requirements for Java EE containers and authorization providers. With this contract, authorization providers can perform the access decisions for resources in Java EE appservers such as WAS. The TAM security utility that is embedded within WAS is JACC-compliant and is used to:
- Add security policy information when applications are deployed
- Authorize access to WAS-secured resources.
When applications are deployed, the embedded TAM client takes any policy and or user and role information that is stored within the application deployment descriptor or using annotations and stores it within the TAM Policy Server.
The Tivoli Access Manager JACC provider is also called when a user requests access to a resource that is managed by WAS.
The previous figure illustrates the following sequence of events:
- Users that access protected resources are authenticated using the TAM login module configured for use when the embedded TAM client is enabled.
- The WAS container uses information from the Java EE application deployment descriptor and annotations to determine the required role membership.
- WAS uses the embedded TAM client to request an authorization decision from the TAM authorization server. Additional context information, when present, is also passed to the authorization server. This context information is comprised of the cell name, Java EE application name, and Java EE module name. If the TAM policy database has policies specified for any of the context information, the authorization server uses this information to make the authorization decision.
- The authorization server consults the permissions defined for the specified user within the TAM-protected object space. The protected object space is part of the policy database.
- The TAM authorization server returns the access decision to the embedded TAM client.
- WAS either grants or denies access to the protected method or resource, based on the decision that is returned from the TAM authorization server.
At its core, TAM provides an authentication and authorization framework. We can learn more about TAM, including the information that is necessary to make deployment decisions, by reviewing WAS documentation.
The following guides are available in the IBM TAM for e-business Information Center:
- IBM TAM for e-business Installation Guide
This guide describes how to plan, install, and configure a TAM secure domain. Using a series of easy installation scripts, we can quickly deploy a fully functional secure domain. These scripts are very useful when prototyping the deployment of a secure domain.
To access this guide in the IBM TAM for e-business information center, click Access Manager for e-business > Installation and upgrade information > Installation Guide.
- IBM TAM for e-business Administration Guide
This document presents an overview of the TAM security model for managing protected resources. This guide describes how to configure the TAM servers that make access control decisions. In addition, detailed instructions describe how to perform important tasks, such as declaring security policies, defining protected object spaces, and administering user and group profiles.
To access this guide in the IBM Tivoli Access Manager for e-business information center, click Access Manager for e-business >Administration Information > Administration Guide.
TAM provides centralized administration of multiple servers.
The previous figure is an example architecture showing WASs secured by TAM.
The participating WASs use a local replica of the TAM policy database to make authorization decisions for incoming requests. The local policy databases are replicas of the master policy database. The master policy database is installed as part of the TAM installation. Having policy database replicas on each participating WAS node optimizes performance when making authorization decisions and provides failover capability.
Although the authorization server can also be installed on the same system as WAS, this configuration is not illustrated in the diagram.
All instances of TAM and WAS in the example architecture share the LDAP user registry on Machine E.
The LDAP registries that are supported by WAS are also supported by TAM.
It is possible to have separate WAS profiles on the same host configured for different TAM servers. Such an architecture requires that the profiles are configured for separate Java SE Runtime Environments (JRE 6) and therefore we need multiple JREs installed on the same host.
Related conceptsAuthorization providers
Related informationIBM Tivoli Access Manager for e-business Information Center
IBM Tivoli Access Manager for e-business Redbook