SMWebLogicAgent Conf Enu
SMWebLogicAgent Conf Enu
Agent Guide
r12.0 SP2
This documentation and any related computer software help programs (hereinafter referred to as the "Documentation") are for your informational purposes only and are subject to change or withdrawal by CA at any time. This Documentation may not be copied, transferred, reproduced, disclosed, modified or duplicated, in whole or in part, without the prior written consent of CA. This Documentation is confidential and proprietary information of CA and may not be used or disclosed by you except as may be permitted in a separate confidentiality agreement between you and CA. Notwithstanding the foregoing, if you are a licensed user of the software product(s) addressed in the Documentation, you may print a reasonable number of copies of the Documentation for internal use by you and your employees in connection with that software, provided that all CA copyright notices and legends are affixed to each reproduced c opy. The right to print copies of the Documentation is limited to the period during which the applicable license for such software remains in full force and effect. Should the license terminate for any reason, it is your responsibility to certify in writing to CA that all copies and partial copies of the Documentation have been returned to CA or destroyed. TO THE EXTENT PERMITTED BY APPLICABLE LAW, CA PROVIDES THIS DOCUMENTATION "AS IS" WITHOUT WARRANTY OF ANY KIND, INCLUDING WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NONINFRINGEMENT. IN NO EVENT WILL CA BE LIABLE TO THE END USER OR ANY THIRD PARTY FOR ANY LOSS OR DAMAGE, DIRECT OR INDIRECT, FROM THE USE OF THIS DOCUMENTATION, INCLUDING WITHOUT LIMITATION, LOST PROFITS, LOST INVESTMENT, BUSINESS INTERRUPTION, GOODWILL, OR LOST DATA, EVEN IF CA IS EXPRESSLY ADVISED IN ADVANCE OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE. The use of any software product referenced in the Documentation is governed by the applicable license agreement and is not modified in any way by the terms of this notice. The manufacturer of this Documentation is CA. Provided with "Restricted Rights." Use, duplication or disclosure by the United States Government is subject to the restrictions set forth in FAR Sections 12.212, 52.227-14, and 52.227-19(c)(1) - (2) and DFARS Section 252.227-7014(b)(3), as applicable, or their successors. Copyright 2010 CA. All rights reserved. All trademarks, trade names, service marks, and logos referenced herein belong to their respective companies.
Contact CA Technologies
Contact Technical Support For your convenience, CA Technologies provides one site where you can access the information you need for your Home Office, Small Business, and Enterprise CA Technologies products. At http://ca.com/support, you can access the following: Online and telephone contact information for technical assistance and customer services Information about user communities and forums Product and documentation downloads CA Support policies and guidelines Other helpful resources appropriate for your product
Provide Feedback If you have comments or questions about CA Technologies product documentation, you can send a message to techpubs@ca.com. If you would like to provide feedback about CA Technologies product documentation, complete our short customer survey, which is available on the CA Support website at http://ca.com/docs.
Contents
Chapter 1: Overview 9
Introduction ..................................................................................... 9 Required Background Information ............................................................... 10 SiteMinder Agent Components .................................................................. 10 SiteMinder Identity Asserter (IA) ................................................................ 11 How the SiteMinder Identity Asserter Handles HTTP Requests ................................. 12 How the SiteMinder Identity Asserter Handles Requests with X.509 Certificates ................ 14 SiteMinder Authentication Provider .............................................................. 15 Groups Module.............................................................................. 15 SiteMinder Authorization Provider ............................................................... 16 SiteMinder Adjudication Provider ................................................................ 17 Which SiteMinder Security Providers Do I Need? ................................................. 18 Use Cases ...................................................................................... 20 HTTP Requests Using All SiteMinder Security Providers Use Case .............................. 21 SiteMinder Authentication Provider Use Cases ................................................ 21 No Identity Asserter Use Case ............................................................... 23 X.509 Identity Asserter Use Case ............................................................ 24
25
Introduction .................................................................................... 25 ASA_HOME ................................................................................. 26 WLS_HOME ................................................................................. 26 Upgrade from a Previous Release ................................................................ 26 Software Requirements ......................................................................... 27 Installation Checklist ............................................................................ 28 Configure the SiteMinder Policy Server for the SiteMinder Agent Providers ........................ 29 Install the SiteMinder Agent ..................................................................... 30 Installation Requirements ................................................................... 30 Define the JAVA_HOME Environment Variable ................................................ 32 Upgrade the SiteMinder Agent ............................................................... 32 Installation Options ......................................................................... 33 Run the Installation in GUI Mode ............................................................ 33 Run the Installation in Console Mode on UNIX ................................................ 38 Install a Web Agent for Advanced Identity Asserter Authentication ................................ 41 Register a Trusted Host Using the Registration Tool .............................................. 41 Register a Trusted Host on Windows ......................................................... 42 Register a Trusted Host on UNIX ............................................................ 43
Contents 5
smreghost Command Arguments ............................................................ 44 smreghost Command Examples ............................................................. 46 Post Installation Steps .......................................................................... 46 Set the WebLogic Environment for the SiteMinder Agent ...................................... 47 Set Up the Agent Configuration File (WebAgent.conf) ......................................... 51 Create an Agent Configuration File for Each SiteMinder Agent Provider ........................ 52 Reinstall the SiteMinder Agent ................................................................... 53 Uninstall the Agent ............................................................................. 53 Uninstall the SiteMinder Agent from Windows ................................................ 54 Uninstall the SiteMinder Agent from UNIX .................................................... 55
57
Configure the SiteMinder Identity Asserter in SiteMinder ......................................... 57 Create a SiteMinder Identity Asserter Validation Realm ....................................... 57 Configure the Identity Asserter to Only Handle Requests from SiteMinder Session Holders ..... 59 Configure the Identity Asserter to Challenge Requests for Credentials ......................... 59 SiteMinder IA-Specific Agent Configuration Parameter Summary .............................. 63 Configure the SiteMinder Identity Asserter in WebLogic........................................... 65 Configure the SiteMinder Identity Asserter in WebLogic ....................................... 65 Configure an Authentication Provider ........................................................ 68 Enable and Disabe the SiteMinder Identity Asserter .............................................. 68 Post-Configuration Notes ........................................................................ 69 What to Do Next ................................................................................ 69
71
Overview ....................................................................................... 71 Configure the SiteMinder Authentication Provider Realm .......................................... 72 Configure the SiteMinder Authentication Provider in WebLogic .................................... 73 Configure the SiteMinder Authentication Provider ............................................. 73 Determine How Users Are Authenticated ..................................................... 75 Configure the Agent to Return Group Membership to WebLogic Using Responses .................. 77 Example: Configure Groups as Responses for the SiteMinder Agent ........................... 77 Configure the Agent to Return Group Membership to WebLogic Server Using Agent Configuration Parameters ..................................................................................... 79 SiteMinder User Directory Configured in Identity Manager Environment ....................... 79 SiteMinder User Directory Not Configured in Identity Manager Environment (Use DMS API) .... 81 Enable and Disable the Authentication Provider .................................................. 83
85
6 Agent Guide
Configure the SiteMinder Authorization Provider in WebLogic ..................................... 87 Enable and Disable the Authorization Provider ................................................... 89
91
Overview ....................................................................................... 91 Configure the SiteMinder Adjudication Provider in WebLogic ...................................... 92 Enable and Disable the Adjudication Provider .................................................... 93
95
Configure Policies for the SiteMinder Authorization Provider ....................................... 95 SiteMinder Resource Mapping for WebLogic Resources............................................ 95 Configure the az_provider_resource_filter Section ............................................ 96 Configure the resource_type_filter Section ................................................... 96 Configure the resource_type-specific_mapping Section ....................................... 97 Configure Rules for SiteMinder Authorization Provider ........................................... 102 Configure Responses for SiteMinder Authentication and Authorization Providers .................. 103 Limitations of Responses in the SmUser Principal ............................................ 104 Configure Policies for SiteMinder Authorization Provider ......................................... 105
Chapter 8: Logging
107
Log File Summary ............................................................................. 107 SiteMinder Agent Provider Log .............................................................. 107 SiteMinder Agent Connection Log ........................................................... 107 Configure SiteMinder Agent Log Files ........................................................... 108 Log File Options............................................................................ 108 Record Messages in a Log File .............................................................. 110 Display SiteMinder Agent Log Messages in a Console ........................................ 111 Set Log Levels ............................................................................. 111 Append Log Messages to an Existing Log File ................................................ 112 Limit the Log File Size ...................................................................... 113 Configure a SiteMinder Agent Provider Log for Each SiteMinder Agent Provider ................... 113 Configure Identity Manager SDK Logging Properties File ......................................... 114
115
Introduction ................................................................................... 115 Deploy the WebLogic Sample Security Application ............................................... 116 Set Up the Test Scenario ....................................................................... 116 Modify the Sample Security Web Application ................................................ 117 Configure the Policy Server for the Security Application ...................................... 117 Enable the SiteMinder Agent Providers ...................................................... 119
Contents 7
Configure Logging ......................................................................... 119 Configure the SiteMinder Adjudication Provider .............................................. 119 Verify that the SiteMinder Agent Providers Start Correctly ....................................... 120 Access the Security Web Application Resource in a Web Browser ................................. 121 Check the SiteMinder Agent Provider Logs ...................................................... 122
123
SiteMinder Agent Directory Structure ........................................................... 123 Modify Configuration Files ...................................................................... 124 Guidelines for Modifying Configuration Settings ............................................. 124 Agent Configuration Parameters ............................................................ 125 Trusted Host Configuration ................................................................. 131
135
Prepare to Troubleshoot the SiteMinder Agent .................................................. 135 Configure the WebLogic Server Log ............................................................. 136 Solve Host Registration Problems ............................................................... 136 Solve Installation Problems .................................................................... 137 Solve Runtime Problems ....................................................................... 138 Solve Configuration Problems .................................................................. 141
8 Agent Guide
Chapter 1: Overview
This section contains the following topics: Introduction (see page 9) Required Background Information (see page 10) SiteMinder Agent Components (see page 10) SiteMinder Identity Asserter (IA) (see page 11) SiteMinder Authentication Provider (see page 15) SiteMinder Authorization Provider (see page 16) SiteMinder Adjudication Provider (see page 17) Which SiteMinder Security Providers Do I Need? (see page 18) Use Cases (see page 20)
Introduction
The following sections introduce the SiteMinder Agent for Oracle WebLogic Server and describe how the SiteMinder Agent integrates with this operating environment. Features of the SiteMinder Agent include: SiteMinder integration with the J2EE platform Access control of the following J2EE resources: Web Applications (including servlets, HTML pages, JSP, image files) JNDI lookups EJB components JMS connection factories, topics, and queues JDBC connection pools
The Agent additionally supports: FIPS 140-2 IPv6 Centralized and dynamic agent configurations Caching of resource protection decisions and authentication and authorization decisions Logging
Chapter 1: Overview 9
10 Agent Guide
More Information SiteMinder SiteMinder SiteMinder SiteMinder Identity Asserter (IA) (see page 11) Authentication Provider (see page 15) Authorization Provider (see page 16) Adjudication Provider (see page 17)
Note: The SiteMinder IA always validates requests which contain SiteMinder session cookies or X.509 certificates; configure it to challenge other request types. The SiteMinder IA then passes a valid user name and SiteMinder session information to an authentication provider for authentication within the WebLogic domain. Note: If you only need to allow SiteMinder Single Sign-On (SSO) clients to access Web applications, you can use the SiteMinder Identity Asserter as a standalone component without any of the other SiteMinder Agent components. More information: Configure the SiteMinder Identity Asserter (see page 57) Configure the SiteMinder Identity Asserter in SiteMinder (see page 57) Configure the SiteMinder Identity Asserter in WebLogic (see page 65)
Chapter 1: Overview 11
Identity Asserter architecture and data flow is shown in the following diagram.
12 Agent Guide
The SiteMinder Identity Asserter always validates requests which contain SiteMinder session cookies; configure it to challenge other requests for credentials. Note: If you must only allow requests with SiteMinder sessions (with an SMSESSION cookie) to access web applications, you can use the SiteMinder Identity Asserter as a standalone component without any of the other SiteMinder Agent components.
Chapter 1: Overview 13
How the SiteMinder Identity Asserter Handles Requests with X.509 Certificates
The SiteMinder Identity Asserter handles requests with X.509 certificates obtained from a certificate authority and supplied with any HTTP or Java client request as shown in the following diagram:
14 Agent Guide
The SiteMinder Authentication Provider validates that the username associated with a request maps to a user within the associated user directory configured in SiteMinder. If SiteMinder authentication is successful, the SiteMinder Authentication Provider populates a WebLogic subject with a SiteMinder principal that contains the username and SiteMinder session data required to prove that SiteMinder authentication has occurred (required by the SiteMinder Authorization Provider).
Groups Module
The SiteMinder Authentication Provider can obtain group information using one or more of the following: Identity Manager API (licensed separately) DMS API SiteMinder responses
You can use a new Agent Configuration Object parameter, SmUserDirectory, which allows the SiteMinder Agent to return group information to the WebLogic Server. If you configure this parameter in the Agent Configuration Object or set the SiteMinder responses so that groups are returned, the SiteMinder Authentication Provider uses one or more of the APIs to obtain the groups that users belong to and populates the subject with a principal for each group.
Chapter 1: Overview 15
Was Subject Is the Exceptions (such Was the Authenticated by Enable-WebAg as Agent SiteMinder SM Auth. Provider? ent parameter connection authorization set? problems)? successful?
Authorization Decision
16 Agent Guide
The authorization decision table assumes that the resources in question are protected and that: The WebLogic Abstain if Not Protected flag is set to "N". With the flag set this way, the SiteMinder Authorization Provider always provides a PERMIT decision for requests for unprotected resources. If the flag is set to "Y", the SiteMinder Authorization Provider always provides an ABSTAIN decision for requests for unprotected resources. The WebLogic Abstain if Not Authenticated flag is set to "Y". With the flag set this way, the SiteMinder Authorization Provider always provides an ABSTAIN decision for requests not authenticated by SiteMinder. If the flag is set to "N", the SiteMinder Authorization Provider always provides a DENY decision for unauthenticated requests.
Note: If the Authentication Provider is configured, the SiteMinder Adjudication Provider must also be configured.
Note: Do not set EnableWebAgent="NO" for the SiteMinder Adjudication Providerdoing so will prevent the WebLogic Server from starting.
Chapter 1: Overview 17
The following table indicates the behavior of these modes. In the table, "N/A" denotes either a YES or NO answer that does not affect the final outcome of the authorization decision.
Result from other Az Providers configured in the WebLogic Security realm PERMIT (all) DENY (one or more) N/A N/A PERMIT (all) DENY (one or more)
Authorization Decision
SiteMinder Precedence
Equal Precedence
PERMIT (one or more) DENY DENY (one or more) PERMIT (all) DENY PERMIT
Upstream Requirements
Downstream Requirements
18 Agent Guide
Security Provider SiteMinder Identity Asserter (for X.509 certificates) SiteMinder Identity Asserter (for challenged requests) SiteMinder Authentication Provider
Upstream Requirements
Downstream Requirements Requires SiteMinder Authentication Provider to authenticate identities obtained from X.509 certificates. SiteMinder Authentication Provider to authenticate credentials obtained by the configured authentication scheme. None.
None.
Requires SiteMinder Identity Asserter to validate and obtain user identity and SiteMinder session information from SiteMinder session cookies and X.509 certificates. Does not accept users obtained from other Identity Asserters.
Requires subject populated by SiteMinder Authentication provider (containing a SiteMinder principal). ABSTAINs from other authorization decisions. Requires SiteMinder Authorization Provider to be one of the configured authorization providers.
Requires SiteMinder Adjudication Provider to resolve authorization disputes with other authorization providers. -N/A-
Chapter 1: Overview 19
Use Cases
However, it is likely that most deployments fall into one of the following two scenarios:
Problem
Solution
You need to establish a trust Configure just the SiteMinder Identity relationship between the Asserter. SiteMinder and WebLogic Single-Sign On (SSO) environments so that HTTP clients authenticated by SiteMinder are not rechallenged by WebLogic when they access Web applications hosted by a WebLogic Server. You have existing WebLogic or application-based authorization policies that are sufficient for your needs. You need to implement SiteMinder Configure the complete SiteMinder Agent authentication and authorization solution, comprising of: policies for all requests for Web and SiteMinder Authentication Provider server-side applications. SiteMinder Authorization Provider SiteMinder Adjudication Provider SiteMinder Identity Asserter (optional, if perimeter authentication required)
Use Cases
The following use cases illustrate the use of different SiteMinder Agent components to solve different access control needs.
20 Agent Guide
Use Cases
The SiteMinder Authentication Provider validates user credentials obtained by the SiteMinder Identity Asserter against associated user directories configured in SiteMinder. The SiteMinder Authorization Provider provides SiteMinder authorization for all requests. The SiteMinder Adjudication Provider Provides the final access decision and resolves any authorization conflicts that occur if authorization providers are configured in addition to the SiteMinder Authorization Provider.
Chapter 1: Overview 21
Use Cases
In one use case, Java Client 1 and Web Browser 1 go through an Identity Asserter and make requests directly to the container. The requests have an identity assertion token. In a second use case, no Identity Asserter is available and Java Client 2 and Web Browser 2 make requests directly to the container. The requests do not contain an identity assertion token and users must enter a password.
22 Agent Guide
Use Cases
Chapter 1: Overview 23
Use Cases
24 Agent Guide
Introduction
The following sections describe how to install the SiteMinder Agent for WebLogic Server on Windows and UNIX platforms. The SiteMinder Agent installation includes the following security providers: Identity Asserter (IA) Authentication Provider Authorization Provider Adjudication Provider
Although each of these providers is installed when you run the SiteMinder Agent installation, you need only configure the providers that you want to use. More Information Configure Configure Configure Configure the the the the SiteMinder SiteMinder SiteMinder SiteMinder Identity Asserter (see page 57) Authentication Provider (see page 71) Authorization Provider (see page 85) Adjudication Provider (see page 91)
ASA_HOME
Throughout this guide, ASA_HOME refers to the installed location of the SiteMinder Agent. For example: Windows: ASA_HOME=c:\smwlsasa UNIX: ASA_HOME=/opt/smwlsasa
WLS_HOME
Throughout this guide, WLS_HOME refers to the installed location of the WebLogic Server.
26 Agent Guide
Software Requirements
Software Requirements
Install supported versions of required software before you install the SiteMinder Agent. For a complete list of supported software, operating systems, Java environments, and prerequisite CA product versions, see the SiteMinder Agent for Application Servers Platform Support Matrix on the Technical Support site. Requirements for all installations Supported versions of the following software must be installed and properly configured before you install the SiteMinder Agent: Oracle WebLogic Server and any cumulative fixes for this application server. For WebLogic hardware and software requirements, see the WebLogic documentation. A supported Java Runtime Environment (JRE) is installed and the path to the JRE is present in your environment. For example, on UNIX systems, if your JRE is not in the PATH variable, run these commands: PATH=$PATH:JRE/bin export PATH JRE Specifies the location of the Java Runtime Environment. Note: For a list of supported JREs, see the SiteMinder support matrix on the Technical Support site. SiteMinder Policy Server (typically on a different system in production environments).
Requirements for installations featuring advanced authentication To use the SiteMinder Identity Asserter to challenge web requests that do not include a valid SiteMinder session cookie for credentials using advanced (other than Basic) authentication schemes, a supported SiteMinder Web Agent must also be installed. Note: The SiteMinder Policy Server and Web Agent (where applicable) can be installed on different systems than the WebLogic Server. More Information Installation Checklist (see page 28) Install a Web Agent for Advanced Identity Asserter Authentication (see page 41)
Installation Checklist
Installation Checklist
Before you install the SiteMinder Agent on the WebLogic Server, complete the steps in the following table. To help ensure proper configuration, follow the steps in order. You can place a check in the first column as you complete each step.
Completed Steps ? 1. Install and configure the SiteMinder Policy Server. 2. Install the WebLogic Server. 3. Configure the Policy Server for the SiteMinder Agent. 4. Install the SiteMinder Agent on WebLogic Server For WebLogic clusters, install the SiteMinder Agent on each node in the cluster.
For information, see... SiteMinder Policy Server Installation Guide The Oracle WebLogic Server documentation. Configure the SiteMinder Policy Server for the SiteMinder Agent Providers Install the SiteMinder Agent (see page 30)
5. If using the SiteMinder Install a Web Agent for Identity Asserter to challenge Advanced Identity Asserter requests for credentials using Authentication (see page 41) advanced authentication schemes, install and configure a SiteMinder Web Agent. 6. Perform additional required configuration steps. Post Installation Steps
28 Agent Guide
Configure the SiteMinder Policy Server for the SiteMinder Agent Providers
Configure the SiteMinder Policy Server for the SiteMinder Agent Providers
Before you install the SiteMinder Agent, configure SiteMinder objects for the SiteMinder Agent in the Administrative UI. The Agent objects used by SiteMinder Agent for WebLogic fully conform to the SiteMinder central Agent management model. Configure the following agent objects in a manner similar as you would for a SiteMinder Web Agent: Host Configuration Object (typically one for each application server host) Agent Configuration Object (one for the SiteMinder Agent providers) Agent identity (one for the SiteMinder Agent providers)
Note: For detailed information about how to configure Agent-related objects (Web Agent and other SiteMinder Agents), see CA SiteMinder Policy Server Configuration Guide and the CA SiteMinder Web Agent Installation Guide. To configure the SiteMinder Policy Server for the SiteMinder Agent On the Policy Server: 1. Duplicate or create a Host Configuration Object, which holds initialization parameters for a Trusted Host. The Trusted Host is a server that hosts one or more Agents and handles their connection to the Policy Server. 2. As necessary, add or edit Trusted Host parameters in the Host Configuration Object that you just created. 3. Create an Agent identity for the Agent. Select Web Agent as the Agent type for an SiteMinder Agent.
4. Duplicate or create an Agent Configuration Object for the SiteMinder Agent. The Agent Configuration Object holds Agent configuration parameters and can be used to configure a group of Agents centrally. Note: The SiteMinder Agent for Oracle WebLogic does not use the same agent configuration parameters as a SiteMinder Web Agent and even where parameters have similar names their values might not be compatible. Do not attempt to use the Agent Configuration Object for a SiteMinder Web Agent for the SiteMinder Agent for WebLogic. For a complete listing of configuration parameters for the SiteMinder Agent, see Agent Configuration Parameters (see page 125). 5. Add or edit Agent parameters in that Agent Configuration Object. The configuration object must include the DefaultAgentName parameter to specify the Agent identity. In addition, the Agent accepts several optional configuration parameters. After configuring the Policy Server for the SiteMinder Agent, install the SiteMinder Agent software. Then, complete the post installation steps. More Information SiteMinder Agent Installation and Configuration Files (see page 123) Install the SiteMinder Agent (see page 30) SiteMinder Agent Directory Structure (see page 123)
Installation Requirements
Before you install the SiteMinder Agent: Uninstall any previously installed SiteMinder Agent versions. Configure the Policy Server for the SiteMinder Agent Providers. Verify that a supported Java Runtime Environment (JRE) is installed and the path to the JRE is present in your environment. Patch the JRE used by the SiteMinder Agent and WebLogic Server for unlimited cryptography with the Java Cryptography Extension (JCE) package. Note: If the JRE is not patched to support unlimited key strength, host registration will fail during SiteMinder Agent installation and the SiteMinder Agent will not work.
30 Agent Guide
Verify that you have the following information, as you will be prompted for it during the installation: Installation location of the WebLogic Application Server Policy Server IP Address Information about the Trusted Host: To register a new Trusted Host, you need the name of the Trusted Host Configuration Object that you created when you configured the SiteMinder Policy Server for the SiteMinder agent providers. Note: If you want to register a new Trusted Host, be sure that the Policy Server is running before you start the SiteMinder Agent installation. To use an existing Trusted Host on the physical computer where the SiteMinder Agent resides, you need the location of the SmHost.conf file. Note: Only use an existing Trusted Host if you are reinstalling the SiteMinder Agent for WebLogic and the SmHost.conf file that you want to use was therefore created by the smreghost tool supplied with this release. The SiteMinder Agent for WebLogic is implemented using a pure Java SiteMinder Agent API and cannot use an SmHost.conf file created for another SiteMinder Agent to establish its connection to the Policy Server. Agent Configuration Object name for the Agent you created when you configured the SiteMinder Policy Server for the SiteMinder agent providers
JRE Defines the location of the Java Runtime Environment install directory. To set the JAVA_HOME variable on UNIX 1. Open a command shell. 2. Run the following command:
set JAVA_HOME=JRE ; export JAVA_HOME
JRE Defines the location of the WebSphere Java Runtime Environment install directory.
32 Agent Guide
Installation Options
This section describes the options for installing the SiteMinder Agent. Windows: Run the installation in the graphical user interface (GUI) mode to install the SiteMinder Agent. UNIX: Do one of the following to install or upgrade the SiteMinder Agent: Use the graphical user interface (GUI) mode. Use the console mode.
Notes for UNIX Installations If you are planning to run the installation in GUI mode on UNIX, consider the following before you begin: Running a GUI-mode installation or running the Configuration Wizard using the Exceed application can cause truncation of text in dialogs because of unavailable fonts. This limitation has no affect on SiteMinder Agent installation and configuration. If you are installing the SiteMinder Agent over telnet or other terminal emulation software, you must have an X-Windows session running in the background to run the GUI mode installation. Additionally, set the DISPLAY variable to your terminal, as follows: DISPLAY=111.11.1.12:0.0 export DISPLAY If you try to run in GUI mode through a telnet window without an X-Windows session, the installer throws a Java exception and exits. You can also run a command line installation from a console window.
To install the SiteMinder Agent using the graphical user interface (GUI) mode 1. Login as the user who installed WebLogic. For example, if you installed as root, login as root. 2. Exit all applications that are running. 3. Open a command window and navigate to where the install kit is located 4. Enter the appropriate command for your operating system. Windows:
ca-asa-wls-12.0-sp02.bat
UNIX:
sh ca-asa-wls-12.0-sp02.sh
5. Read the License Agreement. If you accept the terms, select the I accept the terms of the License Agreement option and click Next.
34 Agent Guide
6. On the Choose Install Folder panel, specify a location for installing the SiteMinder Agent for Oracle WebLogic and click Next. We recommend the following default location: Windows: drive:\smwlsasa UNIX: /opt/smwlsasa If you specify a folder that does not exist, the installer asks if you want to create it. Click Yes to create it; the installer creates a folder named smwlsasa in whatever directory you specify. The program installs the required files. On the Choose WebLogic Folder screen, specify the installation location of the WebLogic Server and click Install. The program installs the required files. Note: If the location you specify is not present, the installation program displays an error message and asks you to reenter the information. 7. In the Host Registration dialog, select one of the following: Yes, create trusted host The installer invokes the Host Registration tool, smreghost, to register the unique trusted host name with the Policy Server and create the SmHost.conf file. Registering the system as a trusted host enables the SiteMinder Agent to establish a secure, trusted connection with the Policy Server. Create a Host Configuration Object in the Administrative UI before registering a trusted host. No, use existing file The installer invokes the smreghost tool to use an existing SmHost.conf file created for a SiteMinder Agent for WebLogic to establish the connection between the trusted host and the Policy Server. Note: Specify this option only if you are reinstalling the SiteMinder Agent for WebLogic and the SmHost.conf file that you want to use was therefore created by the smreghost tool supplied with this release. The SiteMinder Agent for WebLogic is implemented using a pure Java SiteMinder Agent API and cannot use an SmHost.conf file created for another SiteMinder Agent to establish its connection to the Policy Server.
8. If you selected "Yes, create a trusted host" on the Host Registration screen, do the following: a. On the FIPS Mode Setting screen, click one of the following options and then click Next: FIPS Compatibility Mode (Default) Specifies non-FIPS mode, which lets the Policy Server and the Agents read and write information using the existing SiteMinder encryption algorithms. If your organization does not require the use of FIPS-compliant algorithms, the Policy Server and the Agents can operate in non-FIPS mode without further configuration. If you do not want to use FIPS encryption, accept this default. FIPS Migration Mode Specifies FIPS-migration mode, which is used when you are upgrading an earlier version of SiteMinder to full-FIPS mode. The Policy Server and the Agents continue to use the existing SiteMinder encryption algorithms as you migrate your environment to use only FIPS 140-2 approved algorithms. FIPS Only Mode Specifies full-FIPS mode, which requires that the Policy Server and Web Agents read and write information using only FIPS 140-2 algorithms. Important! A SiteMinder installation that is running in Full FIPS mode cannot interoperate with, or be backward compatible to, earlier versions of SiteMinder that do not support FIPS, including all agents, custom software using older versions of the Agent API, and custom software using PM APIs or any other API that the Policy Server exposes. Relink all custom software using Policy Management APIs or any other API that the Policy Server exposes with FIPS-supporting versions of the respective SDKs to achieve the required support for Full FIPS mode. b. On the the Host Registration screen, enter the following information and click Next: Policy Server IP AddressIP address of the Policy Server where you are registering the host SM Admin UsernameName of the administrator permitted to register the host with the Policy Server SM Admin PasswordPassword for the SM Admin account
36 Agent Guide
Host NameUnique name that represents the trusted host to the Policy Server. The name does not have to be the same as the physical client system you are registering; it can be any unique name. Host Config Object Name of the Host Configuration Object specified in the Policy Server.
The installation program registers your unique trusted host name with the Policy Server. If your Policy Server is not running, an error message appears and you can register the trusted host later using the smreghost tool. If you have not patched the JVM Java Cryptography Extension (JCE) package for unlimited cryptography, host registration fails and the following error message appears:
Failed to enable any clusters. Registration has failed.
9. If you selected "No, use existing file" on the Host Registration screen, enter the location of a host configuration file (SmHost.conf) created for a SiteMinder Agent for WebSphere in the text box, or click Choose to browse for the file. The default location of SmHost.conf is either: ASA_HOME\conf\ (Windows) or ASA_HOME/conf/ (UNIX) 10. On the Agent Configuration screen, specify the name of the Agent Configuration Object that you created in the Administrative UI before installing the SiteMinder Agent. Click Next. 11. In the Install Complete dialog, click Done to exit the installer. The installation is complete. 12. Restart the WebLogic Server for installation changes to take effect. More Information SiteMinder Agent Directory Structure (see page 123)
To install the SiteMinder Agent for WebLogic by running the installation script in a UNIX console 1. Login as the user who installed WebLogic. For example, if you installed as root, login as root. 2. Exit all applications that are running. 3. Open a command shell and navigate to where the install kit is located 4. Enter the following command:
sh ca-asa-wls-12.0-sp02.sh -i console
The -i console option interactively runs the installation from a console. 5. Read the License Agreement. If you accept the terms, enter Y and then press Enter. 6. In the Choose Install Folder section, specify a location for the SiteMinder Agent for Oracle WebLogic installation, and then press Enter. We recommend the following location: /opt/smwlsasa
38 Agent Guide
7. Enter Y, then press Enter to create or confirm the installation location for the SiteMinder Agent. The program installs the required files in the SiteMinder Agent install location. The program installs the required files in the WebLogic install location. 8. Specify the installation location of the WebLogic Server. The program installs the required files in the WebLogic install location. 9. When the Host Registration prompt appears, select one of the following numbers: 1The installer invokes the Host Registration tool, smreghost, to register the unique trusted host name with the Policy Server and create the SmHost.conf file. Registering the system as a trusted host enables the SiteMinder Agent to establish a secure, trusted connection with the Policy Server. Create a Host Configuration Object in the Administrative UI before registering a trusted host. 2The installer invokes the smreghost tool to use an existing SmHost.conf file created for a SiteMinder Agent for WebLogic to establish the connection between the trusted host and the Policy Server. Note: Specify this option only if you are the reinstalling the SiteMinder Agent for WebLogic and the SmHost.conf file that you want to use was therefore created by the smreghost tool supplied with this release. The SiteMinder Agent for WebLogic is implemented using a pure Java SiteMinder Agent API and cannot use an SmHost.conf file created for another SiteMinder Agent to establish its connection to the Policy Server. 10. If you entered 1 at the Host Registration prompt (to create a new trusted host), do the following: a. When prompted to select a FIPS mode, choose one of the following options: 1FIPS Compatibility Mode (Default) Specifies non-FIPS mode, which lets the Policy Server and the Agents read and write information using the existing SiteMinder encryption algorithms. If your organization does not require the use of FIPS-compliant algorithms, the Policy Server and the Agents can operate in non-FIPS mode without further configuration. If you do not want to use FIPS encryption, accept this default.
2FIPS Migration Mode Specifies FIPS-migration mode, which is used when you are upgrading an earlier version of SiteMinder to full-FIPS mode. The Policy Server and the Agents continue to use the existing SiteMinder encryption algorithms as you migrate your environment to use only FIPS 140-2 approved algorithms.
3FIPS Only Mode Specifies full-FIPS mode, which requires that the Policy Server and Web Agents read and write information using only FIPS 140-2 algorithms.
Important! A SiteMinder installation that is running in Full FIPS mode cannot interoperate with, or be backward compatible to, earlier versions of SiteMinder that do not support FIPS, including all agents, custom software using older versions of the Agent API, and custom software using PM APIs or any other API that the Policy Server exposes. Relink all custom software using Policy Management APIs or any other API that the Policy Server exposes with FIPS-supporting versions of the respective SDKs to achieve the required support for Full FIPS mode. b. When prompted, enter the following information: Policy Server IP AddressIP address of the Policy Server where you are registering the host SM Admin UsernameName of the administrator permitted to register the host with the Policy Server SM Admin PasswordPassword for the SM Admin account Host NameUnique name that represents the trusted host to the Policy Server. The name does not have to be the same as the physical client system you are registering; it can be any unique name. Host Config ObjectName of the Host Configuration Object specified in the Policy Server.
The installation program registers your unique trusted host name with the Policy Server. If your Policy Server is not running, a message appears and you can register the trusted host manually later. If you have not patched the JVM Java Cryptography Extension (JCE) package for unlimited cryptography, host registration fails and the following error message appears:
Failed to enable any clusters. Registration has failed.
40 Agent Guide
11. If you entered "2" to use an existing trusted host, enter the location of the host configuration file (smhost.conf) created for a SiteMinder Agent for WebLogic. The default location of the file is: ASA_HOME/conf/ 12. Supply the name of the Agent Configuration Object that you created for the SiteMinder Agent. 13. At the installation complete prompt, press Enter to exit the installer. The installation of the SiteMinder Agent for Oracle WebLogic is complete. 14. Restart the WebLogic Server for installation changes to take effect. More Information SiteMinder Agent Directory Structure (see page 123)
There might be situations when you want to register or reregister a trusted host independent of an Agent installation, such as the following: You chose not to register the trusted host during Agent installation You must change the FIPS mode the SiteMinder Agent and Policy Server use to exchange information To rename the trusted host if there has been a change to your SiteMinder environment To reestablish a trusted host if the trusted host has been deleted in the Administrative UI To recreate policy objects if the trusted host policy objects have been deleted from the policy store or the policy store has been lost To change the shared secret that secures the connection between the trusted host and the Policy Server To recreate the SmHost.conf configuration file if it is lost To overwrite an existing trusted host without deleting it first
The smreghost also takes a number of optional requirements not shown here. For a complete list of smreghost arguments, see smreghost Command Arguments (see page 44). Note: There must be a space between each command argument and its value.
42 Agent Guide
More information: smreghost Command Arguments (see page 44) smreghost Command Examples (see page 46)
where library_path_variable is LD_LIBRARY_PATH for Solaris and Linux and is SHLIB_PATH for HP-UX. Example: setting the library path To set the library path for Solaris systems, enter the following two commands:
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/opt/smwlsasa/bin export LD_LIBRARY_PATH
3. Enter the smreghost command using at least the following required arguments:
smreghost -i policy_server_IP_address:port -u administrator_username -p Administrator_password -hn hostname_for_registration -hc host_configuration_ object
The smreghost also takes a number of optional requirements not shown here. For a complete list of smreghost arguments, see smreghost Command Arguments (see page 44). Note: There must be a space between each command argument and its value.
More information: smreghost Command Arguments (see page 44) smreghost Command Examples (see page 46)
44 Agent Guide
-rs Specifies whether the shared secret will be updated (rolled over) automatically by the Policy server. This argument instructs the Policy Server to update the shared secret. -f path_to_host_config_file (Optional) Indicates the full path to the file that contains the registration data. The default file is SmHost.conf. If you do not specify a path, the file is installed in the location where you are running the smreghost tool. If you use the same name as an existing host configuration file, the tool backups up the original and adds a .bk extension to the backup file name. -cf FIPS mode Specifies one of the following FIPS modes: COMPAT--Specifies non-FIPS mode, which lets the Policy Server and the Agents read and write information using the existing SiteMinder encryption algorithms. If your organization does not require the use of FIPS-compliant algorithms, the Policy Server and the Agents can operate in non-FIPS mode without further configuration. MIGRATE--Specifies FIPS-migration mode, which is used when you are upgrading an earlier version of SiteMinder to full-FIPS mode. The Policy Server and the Agents continue to use the existing SiteMinder encryption algorithms as you migrate your environment to use only FIPS 140-2 approved algorithms. ONLY--Specifies full-FIPS mode, which requires that the Policy Server and Web Agents read and write information using only FIPS 140-2 algorithms.
Important! A SiteMinder installation that is running in Full FIPS mode cannot interoperate with, or be backward compatible to, earlier versions of SiteMinder, including all agents, custom software using older versions of the Agent API, and custom software using PM APIs or any other API that the Policy Server exposes. You must re-link all such software with the corresponding versions of the respective SDKs to achieve the required support for Full FIPS mode. If this switch is not used, or you use the switch without specifying a mode, the default setting is used. Default: COMPAT Note: More information on the FIPS Certified Module and the algorithms being used; the data that is being protected; and the SiteMinder Cryptographic Boundary exists in the Policy Server Administration Guide. Note: Stop the WebSphere profile before registering the SiteMinder Agent in FIPS-migratation mode.
-cp cryptographic_provider (Optional) Indicates the name of the cryptographic provider you are using for encryption. If you do not specify a value the default is assumed. Default: ETPKI -o Overwrites an existing trusted host. If you do not use this argument, you will have to delete the existing trusted host with the Administrative UI before using the smreghost command. We recommend using the smreghost command with this argument.
46 Agent Guide
More Information Set the WebLogic Environment for the SiteMinder Agent (see page 47) Set Up the Agent Configuration File (WebAgent.conf) (see page 51) Configure the SiteMinder Identity Asserter (see page 57) Configure the SiteMinder Adjudication Provider (see page 119) Configure the SiteMinder Authentication Provider (see page 71) Configure the SiteMinder Authorization Provider (see page 85) Configure Policies (see page 95)
Add the following SiteMinder Agent option to the WebLogic execution entry: -Dsmasa.home=%SMASA_HOME%
Example: Set the Environment for a Standalone WebLogic Server on Windows The following procedure is an example of how to set the environment for the SiteMinder Agent on a standalone WebLogic Server on Windows. 1. Edit the startWebLogic.cmd file. The startWebLogic.cmd is located in wl_install\user_projects\domains\your_domain\bin where wl_install is the installed location of the WebLogic application server, and your_domain is the name of the WebLogic domain where the SiteMinder Agent is installed. 2. Define SMASA_HOME as follows:
set SMASA_HOME=ASA_HOME
ASA_HOME Specifies the installed location of the SiteMinder Agent. 3. Define SMASA_CLASSPATH as follows:
set SMASA_CLASSPATH=%SMASA_HOME%\conf; %SMASA_HOME%\lib\smagentapi.jar; %SMASA_HOME%\lib\smjavasdk2.jar; %SMASA_HOME%\lib\sm_cryptoj.jar; %SMASA_HOME%\lib\smclientclasses.jar;
4. Add %SMASA_CLASSPATH% to the beginning of the CLASSPATH definition. The modified CLASSPATH variable should resemble the following:
set CLASSPATH=%SMASA_CLASSPATH%;%CLASSPATH%
48 Agent Guide
6. Add %SM_JAVA_OPTIONS% to the execution entry. The modified execution entry should resemble the following:
if "%WLS_REDIRECT_LOG%"=="" ( echo Starting WLS with line: echo %JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% %SM_JAVA_OPTIONS% -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WL_HOME%\server\lib\weblogic.policy %PROXY_SETTINGS% %SERVER_CLASS% %JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% %SM_JAVA_OPTIONS% -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WL_HOME%\server\lib\weblogic.policy %PROXY_SETTINGS% %SERVER_CLASS% ) else ( echo Redirecting output from WLS window to %WLS_REDIRECT_LOG% %JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% %SM_JAVA_OPTIONS% -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WL_HOME%\server\lib\weblogic.policy %PROXY_SETTINGS% %SERVER_CLASS% >"%WLS_REDIRECT_LOG%" 2>&1 )
7. Save startWebLogic.cmd. 8. Restart the WebLogic Application Server for changes to take effect.
Add the following SiteMinder Agent option to the WebLogic execution entry: -Dsmasa.home=$SMASA_HOME
Example: Set the Environment for a Standalone WebLogic Server on UNIX The following procedure is an example of how to set the environment for the SiteMinder Agent on a standalone WebLogic Server on UNIX. 1. Edit the startWebLogic.sh file. The startWebLogic.sh is located in wl_install/user_projects/domains/your_domain/bin where wl_install is the installed location of the WebLogic application server, and your_domain is the name of the WebLogic domain where the SiteMinder Agent is installed. 2. Define SMASA_HOME as follows:
SMASA_HOME=ASA_HOME
ASA_HOME Specifies the installed location of the SiteMinder Agent. 3. Define SMASA_CLASSPATH as follows:
SMASA_CLASSPATH=$SMASA_HOME/conf: $SMASA_HOME/lib/smagentapi.jar; $SMASA_HOME/lib/smjavasdk2.jar; $SMASA_HOME/lib/sm_cryptoj.jar: $SMASA_HOME/lib/smclientclasses.jar:
4. Add ${SMASA_CLASSPATH} to the beginning of the CLASSPATH definition. The modified CLASSPATH variable should resemble the following:
CLASSPATH=${SMASA_CLASSPATH}:${CLASSPATH}
50 Agent Guide
6. Add SM_JAVA_OPTIONS to the execution entry. The modified execution entry should resemble the following:
${JAVA_HOME}/bin/java ${JAVA_VM} ${MEM_ARGS} ${JAVA_OPTIONS} ${SM_JAVA_OPTIONS} -Dweblogic.Name=${SERVER_NAME}
Note: For additional parameters that you can configure in the Agent configuration file, see Agent Configuration. The Agent configuration file is located in the ASA_HOME\conf directory, where ASA_HOME is the location where you installed the SiteMinder Agent. For example: For Windows: C:\smwlsasa\conf For UNIX: /opt/smwlsasa/conf
You can use the default Agent configuration file for all of the SiteMinder Agent Providers, or you can create a separate configuration file for each Provider. The following table describes the features of both configurations:
Configuration
Features
Each Provider Agent configuration can be defined locally in the has a separate WebAgent.conf file so you can have different settings for Agent each Provider. configuration file Note: The AllowLocalConfig parameter in the Agent Configuration Object must be set to yes. Provider-specific information can be written to a separate log file. For example, you can configure one log file for Identity Asserter messages and a different log file for Authentication Provider messages. You can enable or disable each Provider separately. You can configure different cache settings for each Provider. Agent configuration is defined centrally in the Agent Configuration Object in the Policy Server and applies to all Providers.
Note: The settings in the Agent Configuration Object are dynamic. You do not have to restart the Application Server for a setting change to take effect. Information from all Providers is written to the same log. Note: You should not disable Providers if all Providers share the same configuration - WebLogic Server will not start if the SiteMinder Adjudication Provider is disabled.
b. Set the AllowLocalConfig parameter to yes. 2. On the system where the SiteMinder Agent is installed: a. Create a configuration file by copying the WebAgent.conf file. The WebAgent.conf file is located in the ASA_HOME\conf directory.
52 Agent Guide
Save the configuration file with a name that indicates the Provider to which the file applies. For example, name the configuration file for the Identity Asserter IAWebAgent.conf. Be sure that the agentname, HostConfigFile, and the AgentConfigObject parameters are configured correctly. b. Add parameters to the renamed WebAgent.conf file as described in Modify Configuration Files. c. Repeat these steps for each SiteMinder Agent Provider.
3. Configure each SiteMinder Agent Provider to use the configuration file that you created for it when you configure the provider in the WebLogic Administrative Console. More Information Configure Configure Configure Configure the the the the SiteMinder SiteMinder SiteMinder SiteMinder Identity Asserter (see page 57) Authentication Provider (see page 71) Authorization Provider (see page 85) Adjudication Provider (see page 91)
b. Click on the name of the realm you are configuring (for example, myrealm). c. Click the Providers tab.
d. Click the tab for the type of provider that you are removing. e. f. For example, click the Authentication tab to remove the SiteMinder Identity Asserter. Select the SiteMinder provider from the list and click Delete.
g. Click Yes to confirm the deletion. 3. Replace the SiteMinder Adjudication Provider (if configured): a. In the navigation frame on the left of the console, click the Security Realms node in the Domain Structure list.
b. Click on the name of the realm you are configuring (for example, myrealm). c. Click the Providers tab.
d. Click the Adjudication tab. e. f. Select the SiteMinder Adjudication provider from the list and click Replace. The Create a New Adjudication Provider page opens. Specify a name for the new Adjudication Provider in the Name field. For example, AdjudicationProvider.
g. Select a replacement Adjudication Provider from the Type drop-down list. h. Click OK to save the new Adjudication Provider. Important! Verify that there are other providers to assume the responsibility of the provider that you are removing before you restart the WebLogic Server. 4. Stop the WebLogic Server. Note: If you try to uninstall the SiteMinder Agent while WebLogic is still running, the SiteMinder Agent might not be fully uninstalled.
54 Agent Guide
5. Open a command window and navigate to ASA_HOME\asa-wls-uninstall where you installed the SiteMinder Agent 6. Enter the following command and press Enter to start the uninstall:
java -jar uninstaller.jar
The uninstallation wizard appears. 7. Review the information in the Uninstall SiteMinder Agent dialog, then click Uninstall. 8. After confirmation indicates the uninstall is complete, click Done to exit. 9. If the uninstaller listed files it was not able to remove, delete them manually. 10. If necessary, manually delete the ASA_HOME directory (for example, smwlsasa) that the install program created.
b. Click on the name of the realm you are configuring (for example, myrealm). c. Click the Providers tab.
d. Click the tab for the type of provider that you are removing. e. f. For example, click the Authentication tab to remove the SiteMinder Identity Asserter. Select the SiteMinder provider from the list and click Delete.
g. Click Yes to confirm the deletion. 3. Replace the SiteMinder Adjudication Provider (if configured): a. In the navigation frame on the left of the console, click the Security Realms node in the Domain Structure list.
b. Click on the name of the realm you are configuring (for example, myrealm). c. Click the Providers tab.
d. Click the Adjudication tab. e. f. Select the SiteMinder Adjudication provider from the list and click Replace. The Create a New Adjudication Provider page opens. Specify a name for the new Adjudication Provider in the Name field. For example, AdjudicationProvider.
g. Select a replacement Adjudication Provider from the Type drop-down list. h. Click OK to save the new Adjudication Provider. Important! Verify that there are other providers to assume the responsibility of the provider that you are removing before you restart the WebLogic Server. 4. Stop the WebLogic Server. Note: If you try to uninstall the SiteMinder Agent while WebLogic is still running, the SiteMinder Agent might not be fully uninstalled. Verify that the PATH variable is set to the location of your JVM. 5. Open a UNIX shell and navigate to ASA_HOME/asa-wls-uninstall. 6. Enter one of the following commands and press Enter to start the uninstall: GUI mode
java -jar uninstaller.jar
Console mode
java -jar uninstaller.jar -i console
The uninstall program removes the SiteMinder Agent files. 7. Remove the ASA_HOME directory (for example, smwlsasa) that the installation created: a. Navigate to the directory one level above where the SiteMinder Agent is installed. For example: /opt b. Enter the following command and press Enter:
rm -rf ASA_HOME
56 Agent Guide
Server Name The name of the server where WebLogic is installed. Target Leave the default value unchanged. Note: This authentication scheme only passes credentials to the Policy Server for verification. It does not redirect requests to an SSL credential collector. Therefore, the Policy Server does not use the values specified in the Server Name and Target fields. Note: See the Authentication Schemes chapter in the SiteMinder Policy Server Configuration Guide for instructions on creating an authentication scheme. 3. Create a domain and assign user directories that contain the users who can access the protected resources. 4. Create a realm with the following properties: Domain The domain you created in step 3. Name A unique name for the realmfor example, SiteMinder Identity Asserter Validation Realm. Description An optional description for the realm. Agent The name of the SiteMinder Agent identity that you created for the SiteMinder Agent. Enter the Agent name in the text box or click the lookup button (...) to select the Agent name from a list of configured Agent identities. Resource Filter /smiavalidationrealm Authentication Scheme The authentication scheme you created in Step 2.
58 Agent Guide
Maximum Timeout This option must be disabled. Idle Timeout This option must be disabled. Persistent Session Non-persistent. Note: If the session timeouts are not disabled, the identity assertion process might fail and the native WebLogic security services might challenge the request. Note: You do not need to configure any rules for the Identity Asserter validation realm.
Configure the Identity Asserter to Only Handle Requests from SiteMinder Session Holders
To configure the SiteMinder Identity Asserter to handle only requests from users with valid SiteMinder session tickets or X.509 certificates (that is, not to challenge requests for credentials), verify that the ChallengeForCredentials Agent configuration parameter is disabled by setting it to NO in the associated Agent Configuration Object or Agent configuration file. For example:
ChallengeforCredentials=NO
When configured to challenge requests for credentials, the SiteMinder IA supports the following authentication schemes: Basic Basic over SSL HTML Forms X509 Client Certificate X509 Client Certificate and Basic X509 Client Certificate or Basic X509 Client Certificate and HTML Forms X509 Client Certificate or HTML Forms
The SiteMinder IA does not support legacy encoding. Set the legacyencoding Agent configuration parameter to NO for both the SiteMinder IA and the Web Agent:
legacyencoding="NO"
60 Agent Guide
The secureURLs setting in the Agent Configuration Object does not affect the fcccompatmode and legacyencoding parameters the SiteMinder IA does not support them no matter what secureURLs is set to. Note: The secureURLs parameter enables the Web Agent to encrypt all SiteMinder query parameters in a redirection URL. When this parameter is set to yes, the Agents encrypt query data when it returns an HTTP 302 status code (redirect response) to the browser. This functionality can be used when a requested resource is protected by an advanced authentication scheme. Use the Policy Server User Interface to set SecureURLs centrally in the Agent Configuration Object. Additionally, the following parameters must match for both the SiteMinder IA and SiteMinder Web Agent if specified: EncryptAgentName IgnoreQueryData
For more information, see the SiteMinder Policy Server Configuration Guide.
62 Agent Guide
More information: Create a SiteMinder Identity Asserter Validation Realm (see page 57) Configure Authentication Schemes for Challenged Requests (see page 61)
Value yes or no
Description Configures the SiteMinder IA to assert identities from third-party SiteMinder session cookies generated using the SiteMinder SDK. For details, see "Enabling Single Sign-On" in the Agent API chapter of: CA SiteMinder Programming Guide for C CA SiteMinder Programming Guide for Java
Default is NO. Note: If you configure the SiteMinder IA to accept third-party SiteMinder session cookies, also configure the SiteMinder Login Module to accept them so that it can assert WebSphere propagation tokens in situations when WebSphere must reestablish Subjects created by the SiteMinder IA. ChallengeForCredentials yes or no Specifies whether the SiteMinder IA challenges for credentials. Default is NO. AssertionAuthResource String If you are configuring the IA to not challenge requests for credentials, this value must match the value specified for the resource filter in the realm that you create for non-challenged requests. For example:
assertionauthresource=/sitemindertai
CookieDomain
String
Required Parameter
Value
Description No default value. See also the cookiedomainscope parameter. If specified, further defines the cookie domain for assertion of SiteMinder session cookies by the SiteMinder TAI. The scope determines the number of sections, separated by periods, that make up the domain name. A domain always begins with a period (.) character. For example:
cookiedomainscope="2"
CookieDomainScope
Number
Default is 0, which takes the domain name specified in the cookiedomain parameter. EncryptAgentName yes or no Specifies whether the agent name is encrypted when redirecting to the SiteMinder Web Agent for SiteMinder IA credential collection. Must match the value of the same parameter on the Web Agent responsible for advanced authentication. Default is NO. FccCompatMode no Specifies whether to handle backward compatibility of forms credential collection, which the SiteMinder IA does not support. Therefore set this parameter to NO for both the SiteMinder IA and the Web Agent responsible for advanced authentication. For example:
fcccompatmode="NO"
IgnoreQueryData
yes or no
Specifies whether the SiteMinder Agent will cache the entire URL (including the query strings) and send the entire URI to the Policy Server for rule processing. Must match the value of the same parameter on the Web Agent responsible for advanced authentication. Default is NO.
LegacyEncoding
no
Specifies whether to replace any dollar sign ($) characters in legacy URLs with a hyphen (-), which the SiteMinder IA does not support. Therefore set this parameter to NO for both the SiteMinder IA and the Web Agent responsible for advanced authentication. For example:
legacyencoding="NO"
PersistentCookies
yes or no
Specifies whether the agent allows single sign-on for multiple browser sessions. When PersistentCookies is enabled, users who authenticate during one browser session will retain single sign-on capabilities for subsequent browser sessions. Default is NO.
64 Agent Guide
Value String
Description Specifies a page to redirect a request to if a processing error is encountered. This can either be an HTTP or local file system resource. For example:
servererrorfile="http://server.ca.com:88/errorpage.html"
If this setting is not configured, a default message is output to the response when the IA encounters an error. The default message is "SiteMinder Agent encountered an error while handling request. Please ask the administrator to look for messages in the agent log to check for the cause."
8. On the Create a New Authentication Provider page: Specify a name for the Identity Asserter in the Name field. For example, SMIdentityAsserter Select SiteMinderIdentityAsserter from the Type drop-down list.
Note: If SiteMinderIdentityAsserter is not listed in the Type drop-down list, check the SiteMinder Agent installation to determine if it was successful. 9. Click OK to save the new Identity Asserter Provider. 10. Click the entry for your SiteMinder Identity Asserter in the Authentication Providers list to open it for editing: a. In the Active Types Chooser, Use the arrow key to move the SMSESSION and X.509 token types from the Available field to the Chosen field, as needed. Click Apply. Note: Each token type is handled by only one Identity Asserter. If you want the SiteMinder Identity Asserter to handle X.509 token types, be sure that no other Identity Asserter is configured to handle X.509 tokens. b. Click the Provider Specific subtab.
66 Agent Guide
c.
In the Config File field, enter the location of the configuration file for the SiteMinder Identity Asserter. If you are using the default Agent configuration file (WebAgent.conf), the location is ASA_HOME/conf/WebAgent.conf. If you created a new Agent configuration file for the Identity Asserter, be sure to enter the location and file name of the file you created. You can use an absolute or relative path. If you use a relative path, the configuration file will be relative to the smasa.home/conf or relative to your current WebLogic Server working directory, WLS_HOME/user_projects/yourdomain.
d. (Optional) In the User Name Attribute Mapper String field, specify an attribute in a user DN that stores a user name to be used only when the SiteMinder session cookie does not contain a NAME attribute. When the Identity Asserter receives a token that does not contain a NAME attribute through perimeter authentication, it extracts the user name from the specified attribute in the user DN and maps it to a user in the WebLogic user directory. For example, if the user DN is uid=jsmith, ou=myorganization, o=mycompany.com, and you specify uid in the User Name Attribute Mapper String field, the user name jsmith is passed to WebLogic. 11. Click Save. 12. If you have finished configuring SiteMinder Agent Providers, restart the WebLogic server for the changes to take effect. If you are configuring additional SiteMinder Agent Providers, you can restart the WebLogic server after all of the configuration steps are complete. More Information Install the SiteMinder Agent for WebLogic (see page 25) Troubleshoot the SiteMinder Agent (see page 135) Set Up the Agent Configuration File (WebAgent.conf) (see page 51)
68 Agent Guide
Post-Configuration Notes
Post-Configuration Notes
To leverage an Identity Asserter, WebLogic requires that web applications are configured to use the CLIENT-CERT authentication method. For each web application, modify the deployment descriptor as follows: <auth-method>CLIENT-CERT</auth-method> Then redeploy the web application onto WebLogic server. Test your configuration and integration. Troubleshoot the configuration.
What to Do Next
To finish enabling the SiteMinder Agent solution to protect WebLogic resources, complete these steps in any order: Configure SiteMinder Authentication, Authorization, and Adjudication Providers to implement the complete SiteMinder Agent solution, as required. Configure SiteMinder policies. Verify that all configured SiteMinder Agent components are configured correctly.
More Information Which SiteMinder Security Providers Do I Need? (see page 18) Configure the SiteMinder Adjudication Provider (see page 119) Configure the SiteMinder Authentication Provider (see page 71) Configure the SiteMinder Authorization Provider (see page 85) Configure Policies (see page 95) Verify the SiteMinder Agent Installation and Configuration (see page 115)
Overview
The SiteMinder Authentication Provider authenticates a user within the WebLogic security realm by checking the user's credentials against a SiteMinder directory. After validating a user, the Authentication Provider adds the SiteMinder principal to the subject. The Authentication Provider can also obtain the groups that users belong to and populate the subject with a principal for each group. For more information about how the SiteMinder Authentication provider works, see SiteMinder Authentication Provider. For more information about WebLogic principals and subjects and principals, see the WebLogic Documentation. The following are the steps required to configure the SiteMinder Authentication provider. 1. Configure a SiteMinder realm for authentication. 2. Configure the SiteMinder Authentication provider in WebLogic. 3. Decide the following: a. To return physical or virtual group membership to WebLogic Server only.
b. To return physical group membership to the WebLogic Server. 4. Enable the Authentication provider. 5. Configure an Authorization provider. 6. Create SiteMinder policies to protect WebLogic resources. 7. Verify that the SiteMinder Authentication Provider is configured correctly.
More Information Configure the SiteMinder Authentication Provider in WebLogic (see page 73) Enable and Disable the Authentication Provider (see page 83) Configure the SiteMinder Authorization Provider (see page 85) Configure Policies (see page 95) Verify the SiteMinder Agent Installation and Configuration (see page 115)
72 Agent Guide
Authentication Scheme Basic. Maximum Timeout This option must be disabled. Idle Timeout This option must be disabled. Persistent Session Non-persistent. You do not need to configure any rules or policies for the Authentication provider validation realm. Important! After initial setup, do not attempt to reconfigure the SiteMinder Authentication validation realm while the WebLogic Server is running.
7. On the Create a New Authentication Provider page: Specify a name for the Authentication Provider in the Name field. For example, SMAuthenticationProvider. Select SiteMinderAuthenticationProvider from the Type drop-down list.
Note: If SiteMinderAuthenticationProvider is not listed, check the SiteMinder Agent installation to determine if it was successful. 8. Click OK to save the new Authentication Provider. 9. Click the entry for your SiteMinder Authentication Provider in the Authentication Providers list to open it for editing. 10. In the SiteMinder Authentication Provider settings page, complete the following: a. In the Control Flag field, select the priority that applies to the SiteMinder Authentication Provider. Note: If your environment includes other authentication providers, we recommend setting the Control Flag for the SiteMinder Authentication Provider to SUFFICIENT. b. Click the Provider Specific tab. c. In the SMAuth Provider Config File field, enter the location of the configuration file for the Authentication Provider. If you are using the default Agent configuration file, the location is ASA_HOME/conf/WebAgent.conf. If you created a new Agent configuration file for the Authentication Provider, be sure to enter the location and file name of the file you created. You can use an absolute or relative path. If you use a relative path, the configuration file will be relative to the directory smasa.home/conf or relative to your current WebLogic Server working directory, WLS_HOME/user_projects/yourdomain. d. Click Save. 11. If multiple authentication providers are configured for the security realm, specify the order in which WebLogic executes the authentication providers as described in Configure the Execution Order. 12. If the Default Authentication Provider is configured for the security realm, change the Control Flag setting for the Default Authentication Provider from REQUIRED to SUFFICIENT. 13. Enable the Authentication Provider.
74 Agent Guide
14. Enable SiteMinder logging. 15. Restart the WebLogic server and check SiteMinder logs to verify that the Authentication Provider is configured correctly. If you are configuring additional SiteMinder Agent SiteMinder Agent Providers, you can restart the WebLogic server after all of the configuration steps are complete. More Information Install the SiteMinder Agent for WebLogic (see page 25) Troubleshoot the SiteMinder Agent (see page 135) Set Up the Agent Configuration File (WebAgent.conf) (see page 51) Logging (see page 107) Enable and Disable the Authentication Provider (see page 83) Set the Control Flag (see page 76)
For example, if the SiteMinder Authentication Provider is configured first in the execution order with control flag setting SUFFICIENT and it fails to authenticate a user, the user request is rejected immediately. WebLogic does not execute any other Authentication Providers (unless other providers are set to REQUIRED).
To configure the execution order: 1. Start the WebLogic server and the WebLogic Server Administration Console. 2. In the navigation frame on the left of the console, click the Security Realms node in the Domain Structure list. 3. Click on the name of the realm you are configuring (for example, myrealm). 4. Click the Providers tab. 5. If necessary, click the Authentication tab to display the Authentication Providers list. 6. Click Reorder. 7. In the Reorder Authentication Providers list box, select a configured provider and use the arrows to change its position in the list. 8. Click OK. More Information Set the Control Flag (see page 76)
REQUIRED
This Authentication provider is always called, and the user must always pass its authentication test. After this authentication provider attempts to authenticate the user, WebLogic executes the other configured authentication providers, regardless of whether the authentication attempt succeeded. The authentication provider must authenticate the user. After the user is authenticated by the authentication provider, other authentication providers attempt to validate the user. The user can fail to authenticate through any other authentication provider, except providers that have the control flag set to REQUIRED.
REQUISITE
76 Agent Guide
SUFFICIENT
If a user is authenticated by the authentication provider, no other authentication is required (unless another authentication provider has the control flag set to REQUIRED). REQUIRED modules listed after a module flagged SUFFICIENT do not run if it passes. The user can pass or fail the authentication provider authentication. If all of the authentication providers are set to OPTIONAL, the user must pass at least one authentication test.
OPTIONAL
See the WebLogic documentation for more information about the control flag.
To configure groups as responses 1. In the SiteMinder Authentication Realm, configure an OnAuthAccept rule named Group Authentication Rule with a * resource filter. 2. In the policy domain for the SiteMinder Authentication Realm, create SiteMinder responses with a static HTTP header attribute for the following sample WebLogic groups:
Name
Attribute Kind
Variable Name
Variable Value
Static _SM_WLS_GROUP HTTP Header Static _SM_WLS_GROUP HTTP Header Static _SM_WLS_GROUP HTTP Header Static _SM_WLS_GROUP HTTP Header
Administrators
3. In the policy domain for the SiteMinder Authentication Realm: a. Configure a policy named Group Administrator Policy.
b. Attach the Administrator group or users, who belong to the Administrator group, to this policy. c. Attach the Group Authentication Rule to this policy.
d. Bind the Group Administrator response to this rule. e. f. Repeat this step and configure separate policies for the Deployers, Operators, and Monitors groups. Bind the Group Administrator response to this rule.
g. Repeat this step and configure separate policies for the Deployers, Operators, and Monitors groups. h. Repeat this step and configure separate policies for the Deployers, Operators, and Monitors groups.
78 Agent Guide
Configure the Agent to Return Group Membership to WebLogic Server Using Agent Configuration Parameters
Configure the Agent to Return Group Membership to WebLogic Server Using Agent Configuration Parameters
By acting as an Authentication Provider for WebLogic Server, the SiteMinder Agent provides the user-group relationships needed during authentication. To configure the Agent to return a users physical group name from the user store to the WebLogic Server, modify the Agent Configuration Object with: Agent configuration parameters SiteMinder administrator and user store parameters
One parameter, SmUserDirectory, differs if the user store is associated with a CA Identity Manager (licensed separately) or non-CA Identity Manager environment. A CA Identity Manager environment is a view of a management namespace that allows CA Identity Manager administrators to manage objectsusers, groups, and organizationswith a set of associated roles and tasks. Note: For more information, see the CA Identity Manager documentation. Note: The SiteMinder Agent only supports LDAP-based user directories and not those residing in a relational database.
Configure the Agent to Return Group Membership to WebLogic Server Using Agent Configuration Parameters
To modify the Agent Configuration Object in the Policy Store 1. Open the SiteMinder Administrative UI. 2. Open the Agent Configuration Object that you want to modify. 3. Add the following SiteMinder administrator parameters:
Parameter Name
Value
Description
SMAdminUserName
User name of the Administrator with full permissions to manage all SiteMinder domain objects and users. Encrypted Administrator password
SMAdminUserPassw ord
Encrypted password
Parameter Name
Value
Description
SMUserDirectory
IMS, IMS_environ
(IMS means CA Identity Manager.) IMS_environ is the name of the CA Identity Manager environment. For example: IdentityManagerEnv
Note: Because SmUserDirectory can be a multivalued parameter, you can configure more than one user directory in the Agent Configuration Object. You can use multiple parameters to declare more than one DMS configuration or CA Identity Manager environment. 5. Restart the WebLogic Server for configuration changes to take effect. Reboot this server because the SmUserDirectory parameter is not dynamic.
80 Agent Guide
Configure the Agent to Return Group Membership to WebLogic Server Using Agent Configuration Parameters
SiteMinder User Directory Not Configured in Identity Manager Environment (Use DMS API)
In this set up, the SiteMinder Agent requires the SiteMinder Administrator credentials and the SiteMinder user directory structure configured within the Authentication Realm to gather user and group information. In the Agent Configuration Object, you set the credentials using the SMAdminUserName and SMAdminUserPassword parameters and configure this structure using the SmUserDirectory multivalued parameter. We recommend that you set these parameters centrally in the Agent Configuration Object using the Administrative UI because the SiteMinder administrator password cannot be encrypted in the WebAgent.conf file. Using this interface, you can encrypt this password in the Agent Configuration Object stored in the policy store. Note: The following procedure provides an overview of the steps required to create the required policy objects with appropriate parameter settings. For detailed procedural information, see the Policy Server Configuration Guide. To modify the Agent Configuration Object in the Policy Store 1. Open the SiteMinder Administrative UI. 2. Open the Agent Configuration Object that you want to modify. 3. Add the following SiteMinder administrator parameters:
Parameter Name
Value
Description
SMAdminUserName
User name of the Administrator with full permissions to manage all SiteMinder domain objects and users. The encrypted administrator password
SMAdminUserPassword
Encrypted password
Configure the Agent to Return Group Membership to WebLogic Server Using Agent Configuration Parameters
4. Add an "SmUserDirectory" parameter with the following comma-separated values: Directory_Type, LDAP_User_Directory_Name, usernameobjectclass, username-field, username-description, groupname-objectclass, groupname-attribute, groupname-description
Variable
Description
Example Value
Directory_Type
Type of directory, which DMS could be either DMS or IMS. Specify DMS if you are not using CA Identity Manager.
LDAP_User_Directory_N Name of the SiteMinder MyLDAPUserDirectory ame user directory configured in the Policy Server. username-objectclass User object class. inetorgperson^perso n uid description
username-field username-description
groupname-objectclass
groupname-attribute
cn
groupname-description
description
Important! Values containing a comma can be concatenated using the ^ symbol. For example, inetorgperson, person becomes inetorgperson^person as in the following sample Value field entry: DMS, MyLDAPUserDirectory, inetorgperson^person, uid, description, groupofuniquenames, cn, description Note: Because SmUserDirectory can be a multivalued parameter, you can configure more than one user directory in the Agent Configuration Object. You can use multiple parameters to declare more than one DMS configuration or CA Identity Manager environment.
82 Agent Guide
5. In the startWebLogic.cmd file (for Windows) or startWebLogic.sh file (for UNIX), add the path of the smjavasdk2.jar file (located in ASA_HOME\lib) file to the WebLogic Server CLASSPATH. The modified CLASSPATH variable should resemble the following on Windows: set SMASA_CLASSPATH=%ASA_HOME%\conf; %ASA_HOME%\lib\smagentapi.jar;%ASA_HOME%\lib\sm_cryptoj.jar; %ASA_HOME%\lib\smclientclasses.jar;%ASA_HOME%\lib\smjavasdk2 .jar; set CLASSPATH=%SMASA_CLASSPATH%;%WEBLOGIC_CLASSPATH%; %POINTBASE_CLASSPATH%;%JAVA_HOME%\jre\lib\rt.jar; %WL_HOME%\server\lib\webservices.jar;%CLASSPATH% The modified CLASSPATH variable should resemble the following on UNIX: SMASA_CLASSPATH=$ASA_HOME\conf; $ASA_HOME\lib\smagentapi.jar;$ASA_HOME\lib\sm_cryptoj.jar; $ASA_HOME\lib\smclientclasses.jar;$ASA_HOME\lib\smjavasdk2.jar; CLASSPATH=$SMASA_CLASSPATH%;$WEBLOGIC_CLASSPATH; $POINTBASE_CLASSPATH%;$JAVA_HOME\jre\lib\rt.jar; $WL_HOME\server\lib\webservices.jar;$CLASSPATH 6. Restart the WebLogic Server for configuration changes to take effect. Reboot this server because the SmUserDirectory parameter is not dynamic.
You enable or disable the SiteMinder Authentication Provider in the Agent configuration file for the Agent. Note: If you are using a single Agent configuration file for multiple SiteMinder Agent providers including the Authentication Provider and you have already enabled a Provider in that file, you do not need to complete this procedure. Continue the configuration process by completing the verification steps. To enable or disable the SiteMinder Authentication Provider 1. Open the Agent configuration file in the ASA_HOME\conf directory. 2. Set the EnableWebAgent parameter as follows: To enable the Authentication Provider, set EnableWebAgent="Yes" To disable the Authentication Provider, set EnableWebAgent="No"
Note: The EnableWebAgent parameter applies to all of the Providers that use the Agent configuration file. For example, if you configured all of the SiteMinder Agent Providers to use a single Agent configuration file, setting EnableWebAgent to yes, enables all of the Providers. More Information Set Up the Agent Configuration File (WebAgent.conf) (see page 51) Verify the SiteMinder Agent Installation and Configuration (see page 115) Modify Configuration Files (see page 124)
84 Agent Guide
Overview
After a user has been authenticated by the SiteMinder Authentication Provider, the SiteMinder Authorization Provider evaluates SiteMinder policies to determine whether the user can access a protected WebLogic resource. Note: The SiteMinder Authorization Provider only authorizes requests that have been authenticated by the SiteMinder Authentication Provider. To configure the SiteMinder Authorization Provider. 1. Configure a SiteMinder realm for authorization. 2. Configure the SiteMinder Authorization Provider in WebLogic. 3. Enable the Authorization provider. 4. Configure SiteMinder policies. 5. Configure the SiteMinder Adjudication Provider. 6. Verify that the Authorization Provider is configured correctly. More Information SiteMinder Authentication Provider (see page 15) SiteMinder Authorization Provider (see page 16) Enable and Disable the Authorization Provider (see page 89) Configure Policies (see page 95) Configure the SiteMinder Adjudication Provider (see page 91) Verify the SiteMinder Agent Installation and Configuration (see page 115)
86 Agent Guide
Maximum Timeout An appropriate session timeout value. Note: Bear in mind that there is no session synchronization between the SiteMinder Agent and WebLogic when setting timeout values. Idle Timeout An appropriate session idle timeout value. Note: Bear in mind that there is no session synchronization between the SiteMinder Agent and WebLogic when setting timeout values. Persistent Session Non-persistent.
b. Select SiteMinderAuthorizationProvider from the Type drop-down list. Note: If SiteMinderAuthorizationProvider is not listed, check the SiteMinder Agent installation to determine if it was successful. 8. Click OK to save the new Authorization Provider.
9. Click the entry for your SiteMinder Authorization Provider in the Authentication Providers list to open it for editing: a. Click the Provider Specific tab.
b. To determine what access decision the SiteMinder Authorization provider returns when the requested resource is not authenticated by SiteMinder, set the Abstain if Not Authenticated flag as follows:
The result from the SiteMinder Authorization Provider is... ABSTAIN DENY
Enabled Disabled
The effect that these access decisions have on a users access to a WebLogic resource depends on how the Adjudication Provider is configured. c. To determine what access decision the SiteMinder Authorization provider returns when the requested resource is not protected by a SiteMinder policy, set the Abstain if Not Protected flag as follows:
The result from the SiteMinder Authorization Provider is... ABSTAIN PERMIT
Enabled Disabled
d. In the SMAz Provider Config File field, enter the location of the configuration file for Authorization Provider. If you are using the default Agent configuration file, the location is ASA_HOME/conf/WebAgent.conf. If you created a new Agent configuration file for the Authorization Provider, be sure to enter the location and file name of the file you created. You can use an absolute or relative path. If you use a relative path, the configuration file will be relative to the directory smasa.home/conf or relative to your current WebLogic Server working directory, WLS_HOME/user_projects/yourdomain. 10. Click Save.
88 Agent Guide
11. Enable the Authorization Provider. 12. Enable SiteMinder logging. 13. If you finished configuring SiteMinder Agent Providers, restart the WebLogic server and check SiteMinder logs to verify that the Authorization Provider is configured correctly. If you are configuring additional SiteMinder Agent Providers, you can restart the WebLogic server after all of the configuration steps are complete. More Information Install the SiteMinder Agent for WebLogic (see page 25) SiteMinder Agent Installation and Configuration Files (see page 123) SiteMinder Adjudication Provider (see page 17) Set Up the Agent Configuration File (WebAgent.conf) (see page 51) Enable and Disable the Authorization Provider (see page 89) Logging (see page 107)
To enable or disable the SiteMinder Authorization Provider in the Agent configuration file for the Agent Note: If you are using a single Agent configuration file for multiple SiteMinder Agent providers including the Authorization Provider and you have already enabled a Provider in that file, you do not need to complete this procedure. Continue the configuration process by completing the verification steps. 1. Open the Agent configuration file in the ASA_HOME/conf directory. 2. Set the EnableWebAgent parameter as follows: To enable the Authorization Provider, set EnableWebAgent to Yes as follows: EnableWebAgent="Yes" To disable the Authorization Provider, set EnableWebAgent to No: EnableWebAgent="No" Note: The EnableWebAgent parameter applies to all of the Providers that use the Agent configuration file. For example, if you configured all of the SiteMinder Agent Providers to use a single Agent configuration file, setting EnableWebAgent to yes, enables all of the Providers. More Information Set Up the Agent Configuration File (WebAgent.conf) (see page 51) Modify Configuration Files (see page 124)
90 Agent Guide
Overview
The SiteMinder Adjudication Provider makes a final access decision after a user has been authenticated and authorized for a protected resource. In an environment that uses more than one authorization provider, the SiteMinder Adjudication Provider resolves conflicts by weighing the result the access decision of each authorization provider. See SiteMinder Adjudication Provider for more information. Note: A WebLogic security domain can have only one Adjudication Provider. To configure the SiteMinder Adjudication Provider. 1. Configure the SiteMinder Adjudication Provider in WebLogic. 2. Enable the Adjudication Provider. 3. Validate that the Adjudication Provider is configured correctly. More Information Enable and Disable the Adjudication Provider (see page 93) Verify the SiteMinder Agent Installation and Configuration (see page 115)
b. Select SiteMinderAdjudicationProvider from the Type drop-down list. Note: If SiteMinderAdjudicationProvider is not listed, check the SiteMinder Agent installation to determine if it was successful. 8. Click OK to save the new Adjudication Provider. 9. Click the entry for your SiteMinder Adjudication Provider to open it for editing: a. Click the Provider Specific tab.
b. In the SMAdjudication Provider Config File field, enter the location of the configuration file for the Adjudication Provider. If you are using the default Agent configuration file, the location is ASA_HOME/conf/WebAgent.conf. If you created a new Agent configuration file for the Adjudication Provider, be sure to enter the location and file name of the file you created. You can use an absolute or relative path. If you use a relative path, the configuration file will be relative to the directory smasa.home/conf or relative to your current WebLogic Server working directory, WLS_HOME/user_projects/yourdomain.
92 Agent Guide
c.
In the SiteMinder Permission Decision field, select one of the following options:
SiteMinder Precedence
The SiteMinder Adjudication Provider assigns maximum weight to the result returned by a SiteMinder Authorization Provider. The SiteMinder Adjudication Provider assigns equal weight to the results returned by all configured Authorization Providers in the security realm.
Equal Precedence
10. Click Save. 11. Enable the Adjudication Provider. 12. Configure logging. 13. Restart the WebLogic Server and check SiteMinder logs to verify that the Adjudication Provider is configured correctly. More Information Set Up the Agent Configuration File (WebAgent.conf) (see page 51) Install the SiteMinder Agent for WebLogic (see page 25) SiteMinder Adjudication Provider (see page 17) Enable and Disable the Adjudication Provider (see page 93) Logging (see page 107)
To enable and disable the SiteMinder Adjudication Provider 1. Open the Agent configuration file in the ASA_HOME/conf directory. 2. Set the EnableWebAgent parameter as follows: To enable the Adjudication Provider, set EnableWebAgent="Yes" To disable the Adjudication Provider, set EnableWebAgent="No" Note: The EnableWebAgent parameter applies to all of the Providers that use the Agent configuration file. For example, if you configured all of the SiteMinder Agent Providers to use a single Agent configuration file, setting EnableWebAgent to yes enables all of the Providers. More Information Set Up the Agent Configuration File (WebAgent.conf) (see page 51) Verify the SiteMinder Agent Installation and Configuration (see page 115) Modify Configuration Files (see page 124)
94 Agent Guide
Note: For complete information about SiteMinder policy configuration, see the SiteMinder Policy Server Configuration Guide. More Information SiteMinder Resource Mapping for WebLogic Resources (see page 95)
This section describes the SiteMinder resource mapping for WebLogic resources. This mapping, which is summarized in the following figure, provides a means of representing WebLogic resources in the realms and rules that make up your authorization policies.
Resource Type Administration Resource EJB Resource JDBC Resource JMS Resource JNDI Resource Server Resource URL Resource
96 Agent Guide
Note: If the SiteMinder Resource Mapper obtains a resource from WebLogic that is not of the types shown in the previous table, the default resource mapping is a concatenation of the requested resource values obtained from the WebLogic resource type. Spaces within the resource values are converted to a slash (/). You can use debug log messages from the SiteMinder Authorization Provider to obtain information about the requested WebLogic resource and the SiteMinder mapping of the WebLogic resource to a SiteMinder resource. We recommend that you configure a nested realm under the SiteMinder Authorization Provider validation realm for each WebLogic resource type, specifying the appropriate resource_type_filter as the resource filter as shown in the following table.
Nested Realm Resource Filter /adm /jdbc /jms /jndi /svr /url
Realm Contents
Administration Resource realm JDBC resource realm JMS resource realm JNDI resource realm Server resource realm URL resource realm
Rules for Administration Resources Rules for JDBC resources Rules for JMS resources Rules for JNDI resources Rules for Server resources Rules for URL resources
Note: If you implement your security policies using nested realms, verify that the Enable Nested Security setting is enabled on the SiteMinder Global Settings dialog. Additionally, create a simple allow access rule in the SiteMinder Authorization Provider validation realm and include it in your authorization policy. For more information about nested realms, see the SiteMinder Policy Server Configuration Guide. Alternatively, include the resource_type_filter value as part of the resource specification in the rule.
Administration Resources To protect a WebLogic Administration resource, resource_type_filter must specify the following parameters (in the order shown):
/category/realm/action
Description
UserLockout
Name of the WebLogic security MyRealm realm. Action associated with the resource. Optional if not specified, defaults to "GET". unlockuser
For example, for an Administration Resource with the following properties: category=UserLockout, realm=myrealm, action=unlockuser The complete resource mapping (effective resource) would be:
/wlsspiaz/adm/UserLockout/myRealm/unlockuser
EJB Resources To protect a WebLogic EJB resource, resource_type_filter must specify the following parameters (in the order shown):
/app/module/ejb/method/methodInterface/methodParams
Description Name of the application containing the EJB Name of the module containing the EJB. Name of the EJB Method executed on the EJB Method interface invoked on the EJB
ejb method
myEJB myMethod
methodInterface
Home
98 Agent Guide
Description
Arguments in the signature java.lang.String, int of the EJB method. Treat multiple arguments as separate slash(/)-delimited parameters.
For example, for an EJB application with the following properties: app=myApp, module=MyJarFile, ejb=myEJB, method=myMethod, methodInterface=Home, methodParams=(java.lang.String, int) The complete resource mapping (effective resource) would be:
/wlsspiaz/ejb/myApp/MyJarFile/myEJB/myMethod/Home/java.lang.String/int
JDBC Resource To protect a WebLogic JDBC resource, resource_type_filter must specify the following parameters (in the order shown):
/category/resource/action
resource action
Name of the JDBC resource. myPool Action associated with the JDBC resource. admin
For example, for a JDBC resource with the following properties: category=connectionPool, resource=myPool, action=admin The complete resource mapping (effective resource) would be:
/wlsspiaz/jdbc/connectionPool/myPool/admin
JMS Resource To protect a WebLogic JMS resource, resource_type_filter must specify the following parameters (in the order shown):
/desType/resource/action
Description
Destination type of the JMS queue resource. Name of the JMS resource. Action performed on the JMS resource. myQueue receive
For example, for a JMS application with the following properties: destType=queue, resource=myQueue, action=receive The complete resource mapping (effective resource) would be:
/wlsspiaz/jms/queue/myqueue/receive
JNDI Resource To protect a WebLogic JNDI resource, resource_type_filter must specify the following parameters (in the order shown):
/path/action
Description JNDI name in the JNDI path tree. Treat multiple JNDI names as separate slash(/)-delimited parameters.
action
modify
For example, for a JNDI application with the following properties: path={pathComponent1,pathComponent2}, action=modify The complete resource mapping (effective resource) would be:
/wlsspiaz/jndi/pathcomponent1/pathcomponent2/modify
Server Resource To protect a WebLogic Server resource, resource_type_filter must specify the following parameters (in the order shown):
/server/action
Description Name of the server on which the action needs to be performed. Action performed on the Server.
action
shutdown
For example, for a server application with the following properties: server=MyServer, action=shutdown The complete resource mapping (effective resource) would be:
/wlsspiaz/svr/MyServer/shutdown
URL Resource To protect a WebLogic URL resource, resource_type_filter must specify the following parameters (in the order shown):
application/contextPath/uri/httpMethod
Description Name of the application servicing this URL. Context-path of the application servicing this URL. The URI requested. Treat multiple path arguments as separate slash(/)-delimited parameters.
contextPath
/mywebapp
uri
/foo/bar.jsp
For example, for a server application with the following properties: application=myApp, contextPath=/mywebapp, uri=/foo/bar/my.jsp The complete resource mapping (effective resource) would be:
/wlsspiaz/url/myapp/mywebapp/foo/bar/my.jsp
For example, a rule can specify that all EJB resources in a realm are protected for Get Agent actions. When a client attempts to access these resources, the rule fires and the policy containing the rule determines whether the consumer application can access the protected EJB application. Note: For more information about creating rules, see the SiteMinder Policy Server Configuration Guide.
getAuthDirID () Returns the Object ID of the user directory a principal was authenticated against.
getAuthResponses () Returns the responses returned by the Policy Server during authentication.
getAzResponses () Returns the responses returned by the Policy Server during authorization of a resource by a principal.
The following code snippet is an example that shows the WebLogic Server obtaining SmUser principals response attributes in a J2EE Servlet:
public void service(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { javax.security.auth.Subject subject = weblogic.security.Security.getCurrentSubject (); java.util.Set set = subject.getPrincipals (com.netegrity.siteminder.weblogic.sspi.auth.SmWLSUser.class); java.util.Iterator i = set.iterator(); while (i.hasNext()) { SmWLSUser smUser = (SmWLSUser)i.next(); // Get Authentication Responses HashMap auResponseMap = smUser.getAuthResponses(); // Get Authorization Responses HashMap azResponseMap = smUser.getAzResponses(); } }
J2EE Component Scenario Web client accessing servlet. Responses requested within the servlet or JSP
Authorization Responses
Available
J2EE Component Scenario Java client accessing EJB.Responses requested within the EJB on the server side Java client accessing the EJB. Responses request on the client side, that is, on the remote Java Virtual Machine.
Authorization Responses
Available
Available*
Not Available**
*The Authentication responses are available after the authentication phase. During the validation phase, the authentication responses are not altered and, as a result, authentication responses are only set during the initial authentication. **The Authorization responses are not available, as the SmUser principal is serialized to the client JVM during the authentication phase. The Authorization requests do not alter the principal. As a result, the SmUser principal is not reserialized to the client during authorization requests and authorization responses are not available inside a serialized SmUser principal on a remote JVM. Also, Authorization responses are only available for J2EE components that the responses bind to. For example, if a servlet accesses an EJB, the Authorization responses are only available for the servlet before accessing the EJB. Once the EJB is accessed by the servlet code, EJB responses are available in the EJB.
Note: For more information about creating policies, see the SiteMinder Policy Server Configuration Guide.
Chapter 8: Logging
This section contains the following topics: Log File Summary (see page 107) Configure SiteMinder Agent Log Files (see page 108) Configure a SiteMinder Agent Provider Log for Each SiteMinder Agent Provider (see page 113) Configure Identity Manager SDK Logging Properties File (see page 114)
By default, the SiteMinder Agent connection log, SMWLSASADefaultLog.log, is located in ASA_HOME\log where ASA_HOME is the installed location of the SiteMinder Agent. For example: For Windows: C:\smwlsasa\log For UNIX: /opt/smwlsasa/log To configure the SiteMinder Agent connection log, edit the smagent.properties file in the following location: ASA_HOME\conf\smagent.properties Note: The Default SiteMinder Agent log does not support dynamic log level changes. More Information Configure SiteMinder Agent Log Files (see page 108)
For the SiteMinder Agent connection log, set logging parameters in the ASA_HOME\smagent.properties file
Parameter LogAppend
Description Determines whether the SiteMinder Agent logs information to an existing log file instead of rewriting the entire file each time logging is invoked. Note: To use the LogAppend parameter, also specify the LogFile and LogFileName parameters.
LogConsole LogFile
Logs messages in a Command Prompt window. Determines whether messages are written to a file. If you set the Logfile parameter to yes, be sure to specify the location of the log file in the LogFileName parameter.
LogFileName
If the Logfile parameter is set to yes, the location and file name of the file where the SiteMinder Agent writes messages. Determines the amount and type of information that is logged in a file or a console window. The log levels are: 0No log messages, however, a log file is created. 1Fatal messages 2Error messages 3Warning messages 4Information messages 5Trace messages
LogLevel
LogRollover
Determines whether the SiteMinder Agent starts a new log file after a specified period or when the log file reaches a certain size. If set to yes, a new log file is created after the amount of time specified in the LogRolloverTime parameter, or after the log reaches the size specified in the LogRolloverSize parameter.
LogRolloverSize
Indicates the maximum KB size of the log file before the SiteMinder Agent creates a new log file. The default is 10 MB (10240 KB). Note: The LogRollover parameter must be set to yes for this parameter to apply.
Parameter LogRolloverTime
Description Indicates when the SiteMinder Agent creates a new log file. Specify: 1 to create a new log file every hour 12 to create a new log file every 12 am or 12 pm 24 to create a new log file every day 168 to create a new log file every week 720 to create a new log file every month
The default value is every 12 hours. Note: The LogRollover parameter must be set to yes for this parameter to apply. More Information Configure a SiteMinder Agent Provider Log for Each SiteMinder Agent Provider (see page 113) SiteMinder Agent Connection Log (see page 107) Append Log Messages to an Existing Log File (see page 112) Display SiteMinder Agent Log Messages in a Console (see page 111) Record Messages in a Log File (see page 110) Set Log Levels (see page 111) Limit the Log File Size (see page 113)
More Information Configure a SiteMinder Agent Provider Log for Each SiteMinder Agent Provider (see page 113)
Log Level 0 1
Type of Messages No log messages. Note however that log files are still created. Fatal Messages only. For example, fatal messages are logged when the SiteMinder Agent fails to connect to a Policy Server during server startup. Error Messages and Level "1" Messages. Error messages are logged when problems are encountered during SiteMinder Agent initialization or runtime that prevent the SiteMinder Agent from functioning correctly. For example, if the Validation realm is unavailable, an error message is logged.
Log Level 3
Type of Messages Warning and Level "2" Messages. Warning messages are logged when the SiteMinder Agent encounters noncritical configuration problems that do not affect the functionality of the SiteMinder Agent. For example, if an incorrect value for pspollinterval is specified, the value is ignored and a default value is used. Informational and Level "3" Messages. Informational messages are logged for SiteMinder Agent activity and flow. Tracing and Level "4" Messages. Tracing messages provide tracing information for the SiteMinder Agent. Extended debug logging and Level "5" messages. Reserved for future use. The SiteMinder Agent does not log any messages of this type at this time.
4 5 6
To avoid large log files, leave the log level at "1" so the SiteMinder Agent logs only critical errors. If you want to audit the activity of your site more carefully, change the log level to 4. Note: If a noninteger log level is specified, the SiteMinder Agent defaults to log level "0".
Configure a SiteMinder Agent Provider Log for Each SiteMinder Agent Provider
Configure a SiteMinder Agent Provider Log for Each SiteMinder Agent Provider
You can configure SiteMinder to write provider-specific messages to a separate log file for each provider. For example, you can configure one log file for Identity Asserter messages and a different log file for Authentication Provider messages. You can configure log parameters: Centrally, by setting the log parameters in the Agent Configuration Object. In this case, the settings apply to all of the logs. Note: Most settings in the Agent Configuration Object are dynamic. You only have to restart the WebLogic Server for changes to take effect if one or more changed settings are static. Locally, by setting the log parameters in a configuration file for each provider. In this case, the settings apply only to the provider with which the configuration file is associated.
To configure separate logs for each SiteMinder Agent provider 1. Remove the LogFileName parameter from the Agent Configuration Object configured for the SiteMinder Agent. 2. Create an Agent configuration file for each SiteMinder Agent provider as described in Create an Agent Configuration File for Each SiteMinder Agent Provider. 3. In the configuration file where the SiteMinder Agent is installed: a. Add the logfilename parameter and specify the location and name of the log file as follows: LogFileName=path to log file For example: For Windows: LogFileName=C:\smwlsasa\log\IA.log For UNIX: LogFileName=/opt/smwlsasa/log/IA.log b. Optionally, configure additional logging parameters. Note: The log parameters in the configuration file override the log parameters in the Agent Configuration Object if AllowLocalConfig parameter is set to yes. 4. Repeat this process for each provider that requires a separate log file. More Information Configure SiteMinder Agent Log Files (see page 108)
Introduction
Use the procedures in this chapter to verify that your SiteMinder Agent for Oracle WebLogic deployment is installed and configured correctly in the WebLogic Server and the SiteMinder Policy Server. The test scenario in this chapter uses a sample security web application, located at WLS_HOME/weblogicVERSION/samples/server/examples/build/examplesWebA pp, where WLS_HOME is the installed location and VERSION is the version number of the WebLogic Server. To verify that the SiteMinder Agent is operating correctly 1. Deploy the WebLogic sample security application. 2. Set up the test scenario. 3. Verify that the SiteMinder agent providers start correctly. 4. Access the Security web application resource in a web browser. 5. Check the SiteMinder agent provider logs. More Information Set Up the Test Scenario (see page 116) Verify the SiteMinder Agent Installation and Configuration (see page 115) Check the SiteMinder Agent Provider Logs (see page 122)
Deploy the sample security Web application and verify that it works properly with the authentication provider and other security settings you configured. To verify that the sample is installed and protected correctly, use a web browser to access the following security web application resource: http://fully_qualified_domain_name:7001/examplesWebApp/JWS_WebService .jsp where fully_qualified_domain_name is the name of the system where WebLogic is installed. For example: http://server1.acmewidget.com:7001/examplesWebApp/JWS_WebService.jsp When you access this URL, WebLogic prompts you for credentials using a default realm. After the authentication and authorization process, you will be granted access to the target resource. More Information Set Up the Test Scenario (see page 116)
4. Modify the realm that you created for the Authorization Provider to create a subrealm with the following properties to Protect URL Resources: Name A unique name for the subrealm. Resource Filter The resource filter URL. Default Resource Protection Protected. Authentication Scheme Basic. 5. Create a rule in the subrealm you created in Step 4 with the following properties Name A unique name for the rule. Resource /security/examplesWebApp/* Action Verify that the Web Agent actions option button is selected, and the GET action is highlighted. 6. Create a Policy with the following properties to Protect the Security Sample: Name A unique name for the policy. Users Add users or groups of users that are allowed to access the security application. Rules select the rules that you created in steps 3 and 5.
You set the EnableWebAgent parameter in the Agent configuration file in ASA_HOME\conf. Depending on your configuration, you may have a separate Agent configuration file for each SiteMinder Agent Provider. More Information Create an Agent Configuration File for Each SiteMinder Agent Provider (see page 52)
Configure Logging
Configure the SiteMinder Agent Provider and Connection logs before running the verification test. If the test fails you can use these logs to confirm that the verification test is successful or to help you troubleshoot problems. More Information Logging (see page 107)
6. Click the entry for your SiteMinder Adjudication Provider to open it for editing. 7. Click the Provider Specific tab. 8. Verify that the SiteMinder Permission Decision field is set to SITEMINDER_PRECEDENCE. 9. Click Save.
b. Click on the name of the realm you are configuring. (for example, myrealm). c. Click the Providers tab.
d. Verify that the Providers you created appear under the appropriate tab. For example, verify that the SiteMinder Authentication Provider appears under the Authentication tab. 4. Check the SiteMinder Agent Provider and Connection logs. If the Providers start successfully, you should see the following messages: In the SiteMinder Agent Connection Log:
The SiteMinder Agent is initializing. AdministrationManager is trying to create configuration for the SiteMinder Agent Creating agent connection using file Path_to_Agent_Configuration_File Registering the Configuration Manager with the Policy Server
If the SiteMinder Agent Providers do not start correctly, troubleshoot the configuration. More Information Troubleshoot the SiteMinder Agent (see page 135)
The SiteMinder Identity Asserter is propagating the user identity: ID to the WebLogic server. For the SiteMinder Authentication Provider:
The SiteMinder Authentication Manager received login request for user USER_DN. Password not shown. The login request succeeded.
Note: Verify that the resource path and the user ID are correct. For the SiteMinder Adjudication Provider:
The SiteMinder Resource Manager is checking if the resource The SiteMinder Adjudicator is using Adjudication Policy: POLICY_NAME The SiteMinder Adjudicator AUTHORIZES access to resource.
smwlsasa/conf
smwlsasa/log smwlsasa/lib
SMWLSASADefaultLog.log sm_cryptoj.jar
SiteMinder Agent log directory Container for SiteMinder Agent Java Cryptography Extension (JCE) class files.
smagentapi.jar
Container for all class files in the Java Agent API. Container for required class files for Java-clients that request EJBs protected by
smclientclasses.jar
Install location
Files included
Description SiteMinder
smjavasdk2.jar
Container for all class files in the DMS API. Uninstalls the SiteMinder Agent.
smlwasasa/asa-wls -uninstall
uninstaller.jar
In addition, the smsecurityproviders.jar file is placed in the WLS_HOME/server/lib/mbeantypes directory and log4j.jar is placed in the WLS_HOME/server/lib directory.
Always enter quotation marks around the parameter value. Restart the WebLogic server after you have updated and saved configuration files, such as WebAgent.conf and SmHost.conf.
Value yes or no
Description Single sign-on requires a single sign-on cookie. By default, this cookie is created and written to the users browser by SiteMinder or by a custom agent. To enable support for SDK third-party cookies, set the AcceptTPCookie to yes.
String
Parameter Name AllowLocalConfig (Not dynamic) (Applies only in Agent Configuration Object)
Value yes or no
Description If AllowLocalConfiguration is set to yes, parameters set locally in the Agent configuration file take precedence over parameter settings in the Agent Configuration Object. If you want to configure a separate log for each provider, set AllowLocalConfiguration to yes. See Configure a SiteMinder Agent Provider Log for Each SiteMinder Agent Provider for more information.
AuthCacheSize (Dynamic)
Number
Maximum size of the Authentication cache. When the maximum size is reached, new entries replace the least recently used entries. The default value is 0.
Number
Maximum size of the Authorization cache. When the maximum size is reached, new entries replace the least recently used entries. The default value is 0.
Number
The life time (in seconds) of cache entries. Note: This setting applies to all caches.
ChallengeForCredent yes or no ials (Dynamic; Identity Asserter only) DefaultAgentName (Dynamic) String
Specifies whether the SiteMinder Identity Asserter challenges for credentials. Default is NO. The name of the Agent identity that you created in Configure the SiteMinder Policy Server for the SiteMinder Agent Providers. Enables the SiteMinder Agent. If you create a separate Agent configuration file for each provider, enable the Provider in each configuration file.
yes or no
Value yes or no
Description Specifies whether the agent name is encrypted when redirecting to the SiteMinder Web Agent for SiteMinder IA credential collection. Must match the value of the same parameter on the Web Agent responsible for advanced authentication. Default is NO.
no
Specifies whether to handle backward compatibility of forms credential collection, which the SiteMinder IA does not support. Therefore set this parameter to NO for both the SiteMinder IA and the Web Agent responsible for advanced authentication. For example:
fcccompatmode="NO"
filterdomainname (Dynamic)
yes or no
To have the SiteMinder Agent remove the domain name from the user ID string before asserting an identity, set the filterdomainname parameter to yes. Setting the value to yes allows the SiteMinder Agent to use an NTLM authentication scheme because the user identity passed from a Web Agent on a front-end proxy server to the SiteMinder Identity Asserter contains the domain name when using this authentication scheme. The default value is no.
HostConfigFile (Not Dynamic) (Applies only in Agent configuration file) IgnoreExt (Dynamic; Authorization Provider only)
String
The name of the Host Configuration Object that you created in Configure the SiteMinder Policy Server for the SiteMinder Agent Providers. Specifies common file extensions (.gif, .jpg, .jpeg, .png, and .class) that the Authorization Provider can ignore. The Authorization Provider passes requests for files with these extensions directly to WebLogic without authorization. Use this parameter to specify extensions of files that do not require as much security as other resources.
Value yes or no
Description Specifies whether the SiteMinder Agent will cache the entire URL (including the query strings) and send the entire URI to the Policy Server for rule processing. Must match the value of the same parameter on the Web Agent responsible for advanced authentication. Default is NO.
no
Specifies whether to replace any dollar sign ($) characters in legacy URLs with a hyphen (-), which the SiteMinder IA does not support. Therefore set this parameter to NO for both the SiteMinder IA and the Web Agent responsible for advanced authentication. For example:
legacyencoding="NO"
LogAppend (Dynamic)
yes or no
To add logging information to an existing log file instead of rewriting the entire file each time logging is invoked, set the LogAppend parameter to yes. The default LogAppend value is no. Note: To use the LogAppend parameter, also specify the LogFile and LogFileName parameters.
LogConsole (Dynamic)
yes or no
To display log messages in a Command Prompt window, set the LogConsole parameter to yes. The default LogConsole value is no. Before you enable this option on an iPlanet Web Server, change the iPlanet service to interact with the desktop.
LogFile (Dynamic)
yes or no
Determines whether messages are written to a file. The default LogFile value is no. If you set the Logfile parameter to yes, be sure to specify the location of the log file in the LogFileName parameter.
LogFileName (Dynamic)
String
Location and file name of the file where the SiteMinder Agent writes messages if the Logfile parameter is set to yes.
Description Determines the amount and type of information that is logged in a file or a console window. The log levels are: 0No log messages, however, a log file is created. 1Fatal messages 2Error messages 3Warning messages 4Information messages 5Trace messages The default log level is 0.
LogRollover (Dynamic)
yes or no
Determines whether the SiteMinder Agent starts a new log file after a specified period or when the log file reaches a certain size. If set to yes, a new log file is created after the amount of time specified in the LogRolloverTime parameter, or after the log reaches the size specified in the LogRolloverSize parameter. The default LogRollover value is no.
LogRolloverSize (Dynamic)
Number of Indicates the maximum size of the log file kilobytes before the SiteMinder Agent creates a (Kb) new log file. The default is 10 MB (10240 KB). Note: The LogRollover parameter must be set to yes for this parameter to apply.
LogRolloverTime (Dynamic)
Number of Indicates when the SiteMinder Agent hours creates a new log file. For example, specify 1 to create a new log file every hour; specify 168 to create a new log file every week; and specify 720 to create a new log file every month. The default value is 12 hours. Note: The LogRollover parameter must be set to yes for this parameter to apply.
Value yes or no
Description Specifies whether the agent allows single sign-on for multiple browser sessions. When PersistentCookies is enabled, users who authenticate during one browser session will retain single sign-on capabilities for subsequent browser sessions. Default is NO.
ResourceCacheSize (Dynamic)
Number
The maximum number of resource cache entries that the Agent tracks. When the maximum number of entries is reached, new records replace the oldest records. The default value is 1000 entries for IIS and Domino and 750 entries for Apache and iPlanet. If you set this value to a high number, be sure that sufficient server memory is available.
String
Specifies a page to redirect a request to if a processing error is encountered. This can either be an HTTP or local file system resource. For example:
servererrorfile="http://server.ca.com:88/errorpage.ht ml"
If this setting is not configured, a default message is output to the response when the IA encounters an error. The default message is "SiteMinder Agent encountered an error while handling request. Please ask the administrator to look for messages in the agent log to check for the cause." SMUserDirectory (Not Dynamic) SMAdminUserName (Not Dynamic) String String The user directory structures used in the SiteMinder provider authentication realm. The user name of the SiteMinder administrator created during the Policy Server installation who has full permissions to manage all SiteMinder domain objects and users.
Value
Description
Encrypted The encrypted password for the string SiteMinder administrator. value Warning! This password can only be encrypted in the Agent Configuration Object in the Policy Server User Interace and not in the WebAgent.conf file.
More Information Set Log Levels (see page 111) Enable and Disabe the SiteMinder Identity Asserter (see page 68) Enable and Disable the Authentication Provider (see page 83) Enable and Disable the Authorization Provider (see page 89) Enable and Disable the Adjudication Provider (see page 93)
Note: For information about trusted hosts and the parameters in the file, see the SiteMinder Web Agent Installation Guide. Note: To register a trusted host outside the SiteMinder Agent installation process, run smreghost through the command line.
A trusted host is a client that is registered with the Policy Server and is, therefore, allowed to connect to the Policy Server. You can modify Trusted Host configuration settings in two places: Host Configuration file (SmHost.conf)holds initialization parameters for the Trusted Host. Once the Trusted Host connects to a Policy Server, the Trusted Host uses the settings in the Host Configuration Object named in the hostconfigobject parameter of SmHost.conf. Host Configuration Objectholds parameters for a Trusted Host. Except for initialization parameters, Trusted Host parameters are always maintained in a Host Configuration Object.
The following describe the parameters in the SmHost.conf file and the Host Configuration Object, respectively. Note: For information about setting these parameters, see the SiteMinder Policy Server Configuration Guide.
Description
Default Value
Specifies the encryption method BSAFE used for hardware encryption A unique name that represents the host to the Policy Server The server IP address and port numbers for the Policy Server that the Trusted Host accesses The name you specify when you register the trusted host. The IP address and port numbers that you specify when you register the trusted host.
PolicyServer
RequestTimeout
Specifies the number of seconds 60 that the Trusted Host waits before deciding that a Policy Server is unavailable. An automatically generated encryption key used for encrypting traffic between the trusted host and the Policy Server. Important! Do not change the shared secret. N/A
SharedSecret
Note: You cannot modify the cryptoprovider or hostname parameters directly. For information about changing these parameters, see the SiteMinder Web Agent Installation Guide.
Parameter EnableFailover
Description Determines which operation mode the Trusted Host uses to work with the Policy Server.
HostConfigObject The name of the Host Configuration Object specified in the Policy Server
The name you specify when you register the trusted host.
MaxSocketPerPor Defines the maximum number of 20 t TCP/IP connections used by the Trusted Host to communicate with the Policy Server. MinSocketPerPort Determines the number of TCP/IP 2 connections open for SiteMinder services when you start up Policy Server services. NewSocketStep Specifies the number of TCP/IP 2 connections that the Agent opens when new connections are required. The server IP address and port numbers for the Policy Server that the Trusted Host accesses The IP address and port numbers that you specify when you register the trusted host. 60
PolicyServer
RequestTimeout
Specifies the number of seconds that the Trusted Host waits before deciding that a Policy Server is unavailable.
Log The SiteMinder Agent Connection log The SiteMinder Agent Provider log or logs
Description Records SiteMinder Agent start-up messages and shows whether the SiteMinder Agent has made a successful connection with the Policy Server Records runtime messages for SiteMinder Agent Providers To simplify troubleshooting tasks: Create separate log files for each SiteMinder Agent Provider as described in Configure a SiteMinder Agent Provider Log for Each SiteMinder Agent Provider. Set the log level for each log to "5" to display the maximum amount of information in the logs.
WebLogic Server log Records information about WebLogic events, including information about security provider activity More Information Logging (see page 107) Configure the WebLogic Server Log (see page 136)
b. Click Advanced to expand the available options. c. Select INFO from the Stdout Severity Threshold drop-down list.
d. Select the rolemap, atn, and atz entries. e. f. Click Enable. Click Activate Changes.
Possible Cause The JVM has not been patched for unlimited cryptography with the Java Cryptography Extension (JCE) package.
Solution Check for messages that indicate that the host could not be registered or with cluster failed messages. Patch the JVM for unlimited cryptography with the Java Cryptography Extension (JCE) package.
Possible Cause
Solution
Host configuration object has not Check for any messages that indicate the been configured or Policy Server host could not be registered. is not running. Add a host configuration object and run smreghost tool separately from the installation procedure. To run this tool, see the SiteMinder Web Agent Installation Guide. Trusted Host Name exists in the Policy Server. Check for any messages that indicate the host could not be registered. Configure with another trusted host name or delete the already existing one.
Symptom
Possible Cause
Confirm Enter this command in directory where installation program is stored: %> ls -l Check permissions for the installation directory; owner has -rw-rw-rw
Resolve problem Run sh ./[install] or run chmod to add execution privileges for the user running the installation.
Execute Incorrect permission denied command line when trying to run execution. installation program on UNIX platforms.
Message during install that the installer could not register a host
Check the settings in the Host Configuration Object in the Policy Server user interface.
Symptom
Possible Cause
Confirm The WebLogic home directory is a subdirectory under the Oracle home.
Resolve problem Use the GUI installation program to navigate to the correct WebLogic home directory.
Message during Selected Oracle install that home directory WebLogic home is instead of corrupted. WebLogic home directory.
Possible Cause Confirm The web application Login Config is not set to CLIENT-CERT, which prevents the WebLogic server from triggering the SiteMinder Identity Asserter. Try to access the application through the WebLogic httpd listener (default port 7001). Are you challenged by BASIC or FORM?
Resolve problem Edit web.xml manually and change the <login-config><authmethod> value to CLIENT-CERT. OR Open WebLogic Builder or other deployment descriptor GUI editor and edit the web application deployment descriptor. Change the Auth Method value under Login Config. If DefaultAuthentication Provider still exists, edit properties and verify Control Flag is not "REQUIRED".
Try authenticating from this user directory in another method; for example, add group to the WebLogic admin role and start the WebLogic server with that username.
Possible Cause Confirm SiteMinder Agent Provider not enabled. Check the SiteMinder Agent connection log file for the Provider (or console, if enabled) for this message: "Provider is disabled" where Provider is the name of the Provider.
Resolve problem Edit the appropriate Agent configuration file in ASA_HOME/conf and set enableWeb Agent="Yes"
Symptom
Resolve problem There must be a security constraint levied against the URL; check the Web deployment descriptor.
Application works Identity Asserter Try accessing but identity does not invoked. the application not propagate. through the WebLogic httpd listener (default port 7001). Can the application be accessed without challenge? Failed to decrypt SMSESSION cookie. Discrepancy between Policy Server used to set session cookie and that used by Identity Asserter. Check the Agent Configuration files for the proxy server Web Agent and the SiteMinder Agent to verify that they point to policy servers that use the same key store.
Verify that policy and key stores are synchronized. See the SiteMinder Policy Server Administration Guide for more information about key stores.
Symptom Single sign-on between a custom agent built with SiteMinder SDK and WebLogic does not work
Possible Cause Confirm The SiteMinder Identity Asserter is not configured to accept cookies from custom agents, which are different from standard Web Agent cookies. Check the accepttpcookie value in the Identity Asserter WebAgent.conf file.
Resolve problem The accepttpcookie parameter must be set to "Yes" to propagate identity.
Required version Refresh the Upgrade to the latest of Web Agent request and see Web Agent QMR not available. if the application version. is now displayed. There is a See the "Resolve problem with the problem" authentication column. scheme for the SiteMinder Identity Asserter Validation Realm. Protect the SiteMinder Identity Asserter Validation Realm with a X509 Client Cert authentication scheme.
SSL error message: "The SiteMinder Identity Asserter failed to validate the X.509 certificate" in the SiteMinder Identity Asserter Validation Realm.
SSL error There is a See the "Resolve message: problem with the problem" "keytool certificate. column. error:java.lang.E xception: Failed to establish chain from reply"
Import the server certificate in "Base 64 encoded certificate with CA certificate chain in pkcs7 format".
Symptom
Possible Cause
Confirm Check WLS_HOME/webl ogicVERSION/ser ver/lib/mbeantyp es for the siteminder smsecurityprovid ers.jar file
Resolve problem If the file is not present on server, try rerunning the SiteMinder Agent install.
No option to create MBean not SiteMinder deployed. Identity Asserter, Authentication Provider, Authorization Provider, or Adjudication Provider in WebLogic console. The WebLogic Server Administration Console does not display the security realm and other nodes in the left navigation pane. The user account that is accessing the WebLogic console has not been granted the WebLogic admin role, which allows users to perform WebLogic administrative functions. Incorrect file path.
Verify that the admin role is returned for the admin user starting the WebLogic server.
Check that Correct directories exist in logfilename file path for parameter. logfilename parameter in the Agent configuration file and smagent.properti es files. Pathnames should be absolute; file does not have to exist previous to start.
Possible Cause SiteMinder jar file(s) or conf directory missing from classpath.
Confirm Check -classpath switch that is echoed in WebLogic server console. Four CA jar files should be included, plus the /conf directory of ASA_HOME.
Resolve problem Set the CLASSPATH environment variable, or add the jar files to the SMASA_CLASSPATH variable in the startWebLogic script(s).
Verift that the Set library path Java Library Path variable to include echoed in the the /bin directory. WebLogic server console. It should include the /bin directory of ASA_HOME. Check the Policy Server console for messages such as "Failed to create agent configuration for...". In the Administrative UI, verify that the following objects exist: AgentConfigObje ct referenced in the Agent Configuration file HostConfigObjec t referenced in the Host Configuration file
Symptom The SiteMinder Agent displays the message: "SmUser Authentication Directory ID not found. No Groups will be returned".
Possible Cause The user directory that IMS or DMS is configured for is missing in the SiteMinder Agent domain.
Confirm In the Administrative UI, verify that the domain of the SiteMinder Agent contains the user directory that IMS or DMS is configured for in the Agent Configuration Object.
Resolve problem If the user directory is not in the Policy Server, add it to the SiteMinder Agent domain using the Administrative UI and restart the WebLogic Server.
Verify that you correctly followed the steps in SiteMinder User Directory Not Configured in CA Identity Manager Environment (Use DMS API).
2. In the Policy Server User Interface, verify the: value for the SmUserDirectory parameter in the Agent Configuration Object is correct. SiteMinder user directory has the appropriate administrator credentials in the "Credentials and Connection" tab of the SiteMinder User Directory dialog.
Confirm Check the WebLogic console or log for the following error: com.netegrity.sit eminder.agentco mmon.utils.g:Cou ld not parse Input Stream
Resolve problem Check the CLASSPATH environment variable in the startWebLogic file, or in the shell environment
Check the Java Set library path Library Path variable to include echoed in the the /bin directory. WebLogic server console. It should include the /bin directory of ASA_HOME. Check the WebLogic console or log for the following error: Incorrect path to file Path_to_WebAge nt.conf SiteMinder Authentication Provider Failure. Incorrect path to file verify the Agent configuration file exists in the path specified in the error message. If using relative paths, check the following: The smasa.home environment parameter is set correctly in the startWebLogic file, or the Agent configuration file is located in WEBLOGIC_HOM E/user_projects/ domains/YOUR_ DOMAIN
WebLogic cannot find the Agent configuration file (WebAgent.con f) for the SiteMinder Agent
Possible Cause WebLogic cannot find the Agent configuration file for the Adjudication Provider If you do not access the Details tab when you create the Adjudication Provider in the WebLogic console, the location of the Agent configuration file is not set in the config.xml file
Confirm In the config.xml file, check the entry for the SiteMinder Adjudication Provider for the following parameters: <ext:site-minderpermission-decisi on>p\Precedence _Setting</ext:sit e-minder-permiss ion-decision> <ext:sm-adjudica tion-provider-conf ig-file>Path_to_A gent_Config file</ext:sm-adju dication-providerconfig-file> If these parameters do not exist, the Adjudication Provider was not configured correctly. In the SiteMinder Authorization Provider log, check for a message that resembles the following: "User: USER_DN is NOT AUTHORIZED for action "GET" on resource "wlsspiaz/svr/my server/boot"
Resolve problem Add the following parameters in the com.netegrity.weblo gic.sspi.adjudicator. SiteMinderAdjudicati onProvider element in the config.xml: <ext:site-minder-pe rmission-decision>p \Precedence_Setting </ext:site-minder-p ermission-decision> <ext:sm-adjudicatio n-provider-config-fil e>Path_to_Agent_C onfig file</ext:sm-adjudic ation-provider-config -file>
The SiteMinder Authorization Provider is denying authorization for starting the WebLogic Server
In the Administrative UI, create a policy that allows the WebLogic admin account to start the WebLogic server.
Symptom WebLogic Server failed to start. Message in the WebLogic console says that "user weblogic failed to boot the server"
Possible Cause You have configured the SiteMinder Authorization Provider incorrectly.
Confirm
Resolve problem
Follow the steps in If you have already the "Resolve configured the problem" column. SiteMinder Authorization Provider: 1. Create a /* rule in the Authorization Provider realm. 2. Add this rule to the policy that contains all users of the user directory. If you have not configured the SiteMinder Authorization Provider, verify that the group of user "weblogic" is being returned as "Administrators". You can configure groups to be returned by using SiteMinder responses.
Possible Cause
Confirm That you configured the Authorization Provider realms rule correctly in the SiteMinder Agent domain.
Resolve problem Using the Administrative UI: 1. Check Authorization Provider realms rule in the SiteMinder Agent domain. 2. Make sure a /* rule is present with Get and Post actions selected.
You did not select the Post action in the Authorization After you configure Provider realms rule in the SiteMinder the SiteMinder Authentication, Authorization, and Agent domain. Adjudication The WebLogic providers, the Servers log WebLogic Server files say: starts up "..post action is successfully and not the WebLogic authorized..." console is accessible. However, any changes you make to these provider components (that is, updating a component and clicking Apply) in the WebLogic console are not successful and the WebLogic Server prompts you for user credentials again. Also, the WebLogic Server denies permission for any updates you perform using the WebLogic console.