Troubleshooting
Problem
When the Business Process Management cluster that hosts Business Space is behind a reverse proxy server, such as WebSEAL/Tivoli Access Manager, problems can occur when you try to access Business Space and its associated widgets.
Symptom
Symptoms can include the following:
- Cannot access Business Space.
- Cannot display widgets.
- Cannot display the correct context information within widgets.
Cause
The WebSEAL/TAM configuration interferes with the Business Space application and its widgets.
Resolving The Problem
Use either the WebSphere Application Server administrative console or the wsadmin utility to configure WebSEAL/TAM.
Using the WebSphere Application Server administrative console to configure JACC-TAM
Note: If you need access to the TAM server, contact the Security SME for server details.
1. Enable Global Security.
- Access the administrative console at http://<hostname>:9060/admin.
- Go to Security > Global Security.
- Enable administrative, application, and java2 security with the LDAP server with which TAM is configured.
- Go to Global Security > LDAP, and enter the following information. Then click OK.
- Save the configuration, and restart WebSphere Application Server.
Server user Id | Enter the same user id that you entered for WAS Admin DN on TAM settings. For example: user1 |
Server user password | puser1 |
Host | <LDAP configured with TAM> |
Port | <Example: 389> |
Base DN | <Example: o=ibm, c=us> |
Bind DN | <Example: cn=SecurityMaster,secAuthority=Default> |
Bind pwd | <password for SecurityMaster user> |
2. Enable External Authorization with TAM/JACC.
- Access the administrative console at http://<hostname>:9060/admin.
- Go to Security > Global Security.
- Select External authorization providers.
- In the Authorization provider list, select External JACC provider, and then click Configure.
The default properties for TAM are correct. For default values, you do not need to make changes.
e. Under Additional Properties, select Tivoli Access Manager properties, and then select Enable embedded Tivoli Access Manager. Enter the following information, and then click OK.
Client listening port set: 8900 - 8999 | This is the default setting. Change it only if you want to use different ports. |
Policy server | Specify your policyserver:port, For example: windomain3.rtp.raleigh.ibm.com:7135 |
Authorization servers | Specify your authorizationserver:port:ptiority. For example: windomain3.rtp.raleigh.ibm.com:7136:1 |
Administrator user name | Leave the user name as sec_master (default), unless you use a different admin name on the TAM server. |
password for sec_master | domino123 |
registry distinguished name | Type the name that you want to use for WAS. For example: o=ibm,c=us |
Security domain | Leave the Security domain set to Default. Change this setting if you are not using the Default domain on the TAM server or if you have multiple domains created on the TAM server and you want to connect or use a domain other than Default. |
Administrator user distinguished name | Type the fully qualified name of the user. For example: cn=user1,o=ibm,c=us Note: This user is the same as the ‘Server user ID’ configured in the LDAP user registry panel. |
- The WebSphere Application Server contacts the TAM server and creates several properties files under Application Server. This process might take a few minutes. If an error occurs, look in system Out and correct the problem.
f. Save the configuration.
- In system Out, you see a successful configuration of TAM message.
g. Go to Security > Global Security, select External authorization providers, and select External JACC provider. Then click OK,
3. If you installed applications before you enabled TAM (for example, you enabled -LDAP security and installed some secured applications and mapped users and groups to security roles), push the mapping information from the deployment descriptors to the TAM policy server. To push the mapping information, issue the following wsadmin commands:
wsadmin -user serverID -password serverPWD
wsadmin> set secadm [$AdminControl queryNames type=SecurityAdmin,process=dmgr,*]
wsadmin> set secadm [$AdminControl queryNames type=SecurityAdmin,process=server1,*]
wsadmin>set appNames [list app1:app2]
wsadmin>set appNames [list null]
wsadmin>$AdminControl invoke $secadm propagatePolicyToJACCProvider $appNames
Using the wsadmin utility to configure JACC-TAM
Verify that all the managed servers, including node agents, are started. Perform the following configuration once on the deployment manager server. The configuration parameters are forwarded to managed servers, including node agents, when a synchronization is performed. The managed servers require their own restart for the configuration changes to take effect.
1. Start the WebSphere Application Server.
2. Start the command-line utility by running the wsadmin command from the app_server_root/bin directory.
3. At the wsadmin prompt, type the following command:
$AdminTask configureTAM -interactive
Enter the following information:
5. In the administrative console, select Security > Secure administration, applications, and infrastructure > External authorization providers. Select External authorization using a JACC provider option, and then click OK.
6. Go to the main security screen and click OK. Save and sync changes.
7. Restart all Application Server processes in your cell.
8. If you installed applications before you enabled TAM (for example, you enabled LTPA--LDAP security and installed some secured applications and mapped users and groups to security roles), push the mapping information from the deployment descriptors to the TAM policy server. To push the mapping information, issue the following wsadmin commands:
wsadmin -user serverID -password serverPWD
wsadmin> set secadm [$AdminControl queryNames type=SecurityAdmin,process=dmgr,*]
wsadmin> set secadm [$AdminControl queryNames type=SecurityAdmin,process=server1,*]
wsadmin>set appNames [list app1:app2]
wsadmin>set appNames [list null]
wsadmin>$AdminControl invoke $secadm propagatePolicyToJACCProvider $appNames
Example with SVTM TAM60 server
wsadmin>
wsadmin>$AdminTask configureTAM -interactive
Configure embedded Tivoli Access Manager
This command configures embedded Tivoli Access Manager on the WebSphere Application Server node or nodes specified.
WebSphere Application Server Node Name (nodeName): *
*Tivoli Access Manager Policy Server (policySvr): windomain3.rtp.raleigh.ibm.com:7135
*Tivoli Access Manager Authorization Servers (authSvrs): windomain3.rtp.raleigh.ibm.com:7136:1
*WebSphere Application Server administrator's distinguished name (wasAdminDN): cn=was61admin,o=ibm,c=us
*Tivoli Access Manager user registry distinguished name suffix (dnSuffix): o=ibm,c=us
Tivoli Access Manager administrator's user name (adminUid): [sec_master]
*Tivoli Access Manager administrator's user password (adminPasswd): domino123
Tivoli Access Manager security domain (secDomain): [Default]
Embedded Tivoli Access Manager listening port set (portSet): [9900:9999]
Defer (defer): [no]
Configure embedded Tivoli Access Manager
F (Finish)
C (Cancel)
Select [F, C]: [F] F
WASX7278I: Generated command line: $AdminTask configureTAM {-policySvr windomain3.rtp.raleigh.ibm.com:7135 -authSvrs windomain3.rtp.raleigh.ibm.com:7136:1 -wasAdminDN cn=wa
Embedded Tivoli Access Manager configuration action parameters saved successfully. Restart all WebSphere Application Server instances running on the target node or nodes to
wsadmin>
Configuring WebSEAL with TAM
Follow these steps to set up WebSEAL.
1. Ensure that WebSEAL is installed and configured properly.
2. Create the junction between WebSEAL and WebSphere Application Server using the -c iv_creds option for TAI++ and -c iv_user for TAI. Enter either of the following commands as one line using the variables that are appropriate for your environment:
(For TAI++)
server task webseald-server create -t tcp -b supply -c iv_creds
-h host_name -p websphere_app_port_number junction_name
3. Create a trusted user account in TAM which can be used for configuring TAI.
pdadmin -a sec_master -p domino123
pdadmin sec_master> user create -gsouser -no-password-policy taiuser "cn=taiuser
,ou=websphere,o=ibm,c=us" taiuser taiuser ptaiuser
pdadmin sec_master> user modify taiuser password-valid yes
pdadmin sec_master> user modify taiuser account-valid yes
4. Update the webseald-default.conf file:
Edit the WebSEAL configuration file webseal_install_directory/etc/webseald-default.conf. Set the following parameter:
basicauth-dummy-passwd=webseal_userid_passwd
For example, if you set the taiuser/ptaiuser in TAM
basicauth-dummy-passwd = ptaiuser
If using Form based authentication set,
forms-auth=both
ba-auth=none
Configuring WebSeal with Application Server
Follow these steps to enable TAI ++ interceptor on Application Server .
1. In the WebSphere Administrative Console, select Global security.
2. Under Authentication mechanisms and expiration, expand Web and SIP security, and then select Trust Association.
3. Select the check box and click Apply.
4. Select Interceptors > TAMTrustAssociationInterceptorPlus > custom properties, and add these three properties:
Name: com.ibm.websphere.security.webseal.configURL
Value: ${WAS_INSTALL_ROOT}/java/jre/PdPerm.properties
Name: com.ibm.websphere.security.webseal.id
Value: iv-creds
Name: com.ibm.websphere.security.webseal.loginId
Value: taiuser (if the user taiuser/ptaiuser was created in the TAM)
5. Restart the Application Server cell.
6. To access the client, go to
https://<web seal server name>:<webseal port>/<junction name>/<web uri for client>
Transparent junctions
To see the Business Space widgets, create a series of transparent path junctions for each product's widgets. Issue the following command to create a transparent junction:
pdadmin> server task <webseal server> create -t <transport type (ssl) or (tcp)> -x -h hostname <path>
For example:
pdadmin> server task webseald-default create -t tcp -x -h monServer.ibm.com /BusinessSpace
Create the following context roots:
URLs for general Business Space framework (all products):
- /BusinessSpace/*
- /BSpaceWidgetsCommon/*
Additional URLs for WebSphere Business Services Fabric widgets:
- /fabricrest/*
Additional URLs for WebSphere Business Monitor widgets:
- /BusinessDashboard
- /DashboardABX
- /monitorServerComponent
- /mobile
- /rest/bpm/monitorimages
- /rest/bpm/monitor
- /rest/bpm/events
- /AlphabloxServer
- /AlphabloxAdmin
- /AlphabloxTooling
- /BloxBuilder
Additional URLs for WebSphere Enterprise Service Bus widgets:
- /BSpaceWidgetsHM
- /rest
Additional URLs for WebSphere Process Server widgets:
- /BSpaceWidgetsHM
- /SecurityManagerWidgets
- /BSpaceWidgetsBCM
- /rest
Additional configuration steps
1. To resolve the renaming of the Business Space cookie, add the following to WebSEAL conf file:
[preserve-cookie-names]
name = com.ibm.bspace.UserName
name = com.ibm.wbimonitor.UserName
2. (Optional: complete this step only if you encounter issues with the Business Space pages.)
If you are using non-default virtual hosts with a context root, you might need to stop the junction from rewriting the Java™Script on the Business Space pages. To avoid this issue, add the -j junction to the context root, as follows:
server task default-webseald create -f -h <hostname> -p <portnumber> -t tcp -b supply -c iv-user,iv-creds,iv-groups -x -s -j -J trailer /<root context>
Related Information
Was this topic helpful?
Document Information
Modified date:
23 June 2018
UID
swg21409027