Monday, February 27, 2012

How to enable impersonation in WebSphere Portal

Working on one POC for the prospect and got the use case which is complete fit for the recently added impersonation feature in WebSphere Portal 6.1.x. Before drill down on how to enable this new feature first let's look at what exactly the impersonation means and how it is useful. This blog post provides same steps and info on impersonation as infocenter and Portal wiki but with some useful screenshots for easy understanding.

WebSphere Portal 6.1.5 has a feature called Impersonation that allows a user, such as a support specialist, to access another user's system to test out a new page, portlet, etc. and to see any issues as they occur on the end user system. In this case the support specialist assumes the profile of the end user with security access, user profile attributes, portal pages and portlet customizations.

Now let's see how to enable impersonation service in portal.

  • Log on to the WebSphere® Application Server or Network Deployment Administration Console.
  • Navigate to Resources -> Resource Environment -> Resource Environment Providers -> WP AuthenticationService -> Custom Properties

  • Click New.
    • Enter logout.explicit.filterchain in the Name field.
    • Enter com.ibm.wps.auth.impersonation.impl.ImpersonationLogoutFilter in the Value field.

  • Click Apply and then click Save to save the changes directly to the master configuration.
  • Navigate to Resources -> Resource Environment -> Resource Environment Providers -> WP  PortletServiceRegistryService -> Custom Properties.
  • Click New.
    •  Enter jndi.com.ibm.portal.portlet.service.impersonation.ImpersonationService in the Name field.
    •  Enter com.ibm.wps.portletservice.impersonation.impl.ImpersonationServiceImpl in the Value field. 

  • Click Apply and then click Save to save the changes directly to the master configuration.
  • Portal Access Control provides the ability to impersonate other users. For this reason, you must assign the Can Run As User role (WPS7.0) on the USERS virtual resource to the user (eg. wpsadmin) you plan as  impersonator after you enable the impersonation feature.
  • Moving ahead with WPS 7.0, you are provided with default impersonation portlet. Login to portal and navigate to the impersonation link at the top of the banner as shown in the below screen.

  • In the Impersonation Portlet, search for the user you want to impersonate. For example : Test User

  •  Click on the Impersonate button on the portlet and you will be presented with the view of Test User's portal session.

Few known limitations of Impersonation
  • Client side aggregation does not support user impersonation. For this reason, ensure you do not activate client side aggregation on any portal pages where the impersonation portlet is deployed.

No comments: