Sunday, July 7, 2013

Deprecated features in Websphere portal server 8.0


Composite applications
Starting with Version 8.0, WebSphere Portal no longer supports Composite applications. You can still use the portal XML configuration interface to do this type of work.

SOAP support for remote search configuration
SOAP support for remote search services has been deprecated with WebSphere Portal Version 8.0. EJB is still supported.

Login screen
Login screens have been deprecated. If you need to customize your login process, you must use custom authentication filters instead of login screens.

Sharing private pages
Sharing private pages has been deprecated with this version.
                               
The following portal themes and tags were removed in WebSphere Portal Version 8:
  • Page Builder theme
  • All Legacy themes
  • <portal-core:cacheProxyUrl/> tag

New features in Websphere portal server 8.0


WebSphere Portal Version 8 enables organizations to create, manage, and deliver powerful online web experiences that are engaging, flexible, and high performance. WebSphere Portal and Web Experience Factory V8 brings together the powerful tools that help you develop, administer and produce influential online Web experiences, including social collaboration which can enhance productivity. Building on the solid foundation of previous releases, WebSphere Portal V8 possesses new features and updates that can provide your users with a more social, mobile and integrated experience and give you the choice to adopt out-of-the-box solutions.

Managed pages : WebSphere Portal V8 introduces support for managed pages, which are portal pages that are stored in Web Content Manager. By managing portal pages from within Web Content Manager, you can apply web content features like workflow, version control, and syndication to portal pages.
WebSphere Portal V8 has a simplified way to create and manage portal pages and web content using a new integrated tool bar. New approval processes allow you to preview and approve changes to pages before publication. It enables website content to be efficient, previewed, versioned, published, and discarded. Enhanced, out-of-the-box theme also offers design flexibility.

Social Business in Context (OpenID) : Starting with Version 8.0 you can now configure WebSphere Portal to allow external Identity Providers, such as Google and Yahoo, to authenticate users. You can also configure WebSphere Portal to allow registered users to define and use their Facebook credentials to sign on.
With this new feature, transient users, who are trusted and verified from an identity provider, can access WebSphere Portal without requiring a WebSphere Portal user account.
  • New Community Page support lets you more readily scope and place IBM Connections portlets in the right Portal and Web Content Manager context.
  • A consistent tagging and rating experience between WebSphere Portal, Web Content Manager, and IBM Connections.
  • OpenID Authentication lets portal users authenticate with public social network credentials, such as a Google, Yahoo or Facebook ID.
  • For your convenience, the current image has OpenID Authentication enabled for Yahoo and Google providers.
Federating tags : Starting with WebSphere Portal Version 8.0 you can import tags from IBM Connections into the portal tag store. The previously introduced Tag Center now represents a central place in the portal that contains tagged content from the portal, Web Content Manager, and IBM Connections. Users can now, from within the portal, search for tagged content, independent of whether this content resides in the portal, Web Content Manager, or IBM Connections. This way, the portal now provides an easy and convenient approach for searching for content that resides inside or outside of the portal.

Search Optimization : Optimize external search for Web content rendered through WebSphere Portal. Search enhancements provide smooth search index algorithms that optimize WebSphere Portal and Web Content Manager search results. To improve search optimization, page metadata is rendered as keywords in the HTML. The metadata is taken from Web Content Manager and includes title, keywords, category, and more.
Search Enhancements provide more granular search index algorithms that optimize WebSphere Portal and Web Content Manager search results.

Web analytics: Site promotions and overlay analytic reports : WebSphere Portal V8 offers more flexible options to tag pages, portlets and Web content by measuring their usefulness through campaign and custom tags and enables greater insight over web site content value and channel interactions. New user-friendly overlay figures provide an in-line view to track efficiency/ effectiveness of a Web property.

IBM Installation Manager: Users can manage the software life cycle with a single tool: Install, Update, Rollback, Modify, and Uninstall. Version 8 offers faster installation performance and better integration with other IBM products. Installation Manager (IM) has significantly reduced product installation time by 25%, large-topology server creation time by 72% and large-topology cluster-creation time by 40%, saving your valuable time and money. IBM Installation Manager determines available packages including products, prerequisites, fix packs, interim fixes, and other updates.

Site Area Templates: With WebSphere Portal Version 8, you can create site area templates that define the authoring settings, such as the design of the form, elements, fields on a form and default values. It also restrict authoring templates usage. For example, you can use site area templates to only allow “news” to be published without an approver’s review.
  • Site areas are now treated as content allowing services such as workflow, versioning and metadata profiling to be taken advantage of.
  • Site administrators can restrict what type of items can be created within the site providing more granular control.
  • Site areas can also now be rendered directly (mapping presentation templates to site areas types).
These enhancements provide authors with the ability to create 'compound' documents; with site areas acting as a parent and containing content items (within sub-site areas if desired too) such as guides and multi-page content items.
Web Content Manager RESTful Service :
  • The new REST service makes all of the information in the repository easily accessible without compromising security. A simple URL interface allows developers to create queries and to utilize this information to extend the authoring user interface easily or within the site itself (for example, to extend in-line editing or build custom applications).
CMIS support for federated documents :
  • The federated documents feature of Web Content Manager enables you to insert links to content that resides in a remote content repository. You can now insert links to documents from repositories that support Content Management Interoperability Services 1.0 (CMIS 1.0).
Content templating enhancements :
  • The content templating features of Web Content Manager have been expanded to make creating and delivering web content faster and easier. Web content viewers, web content page templates, and content mappings work together to provide a flexible framework that you can use to quickly assemble pages containing web content. To illustrate how these building blocks work together, Web Content Manager includes preinstalled web content libraries with sample web content.
Web Content Manager Authoring Homepage :
  • The new homepage provides a customized entry point for different types of users. Essentially providing a role-based and a simple, single-page user interface, that allows casual authors to easily create and submit content; frequent contributors to create and work with their items; and power users to easily see what is going on across the site and to quickly create or edit any of the items they are responsible for.
Mobile Portal Themes:
WebSphere Portal Mobile Experience theme easily extends Web content to smart phones. The new mobile theme enables developers control over the mobile Web page appearance, content navigation and also includes rich mobile web interaction patterns such as swipe, carousel, accordion, and swap using CSS3 and HTML5 to enable a complete Web experience. The WebSphere Portal Mobile Experience WebKit theme also called the mobile theme, includes a code selection for navigation and page layout that is designed specifically for WebKit mobile devices. You can start with the sample code and then customize it according to your needs. The mobile theme includes:
  • Sample mobile navigation API that follows common mobile application steering patterns
  • Sample mobile page layouts that showcase common content interaction patterns
Unified Task List: Simplified business process management :
With WebSphere Portal V8, users can Access relevant tasks and activities for multiple business process management solutions from a single user interface. The Unified Task List portlet provides a single point of integration between multiple systems and displays tasks that WebSphere Portal users must complete to advance workflows.

ConfigEngine :
You can run ConfigEngine tasks from a read-only ConfigEngine directory that allows you to manage multiple profiles from one location or you can run ConfigEngine tasks from the wp_profile_root directory that you have used in previous releases. For example, to use the ConfigEngine read-only directory, run the ConfigEngine task in the ConfigEngine folder that is on the same level in the directory structure as the default wp_profile directory. You can substitute the path to the ConfigEngine read-only directory in any ConfigEngine task in the product documentation.

Configuration wizard :
Configure databases, set up security, migrate to a new version, and more from the updated configuration wizard. Try out workflows to create customized scripts for your environment for common configuration tasks, such as changing the portal URI, changing the portlet URIs, and replacing the WebSphere Portal administrator user ID to create customized scripts for your environment. Use the web UI for running ConfigEngine tasks as an alternative to the command line.

New Menu and Navigator options :
  • Enhancements to the menu and navigator components provide new configuration options including scoping menu queries to a library and defining the starting point for navigators based on the page context or via a query string. This enables the reuse of the same components within different parts of the site, instead of cloning the same component multiple times with different queries/staring points, cutting development and maintenance time significantly. Additionally navigators now support producing hierarchical markup (for example, unordered or ordered lists) making it possible to follow modern web patterns and also produce accessible page navigation.
Integrator for SAP: Integrate SAP NetWeaver content into your portal site :
  • Use IBM WebSphere Portal Integrator for SAP to integrate content from an SAP NetWeaver Portal into your IBM WebSphere Portal. You can integrate navigational structures and single content pieces.
  • Integrator for SAP integrates the SAP NetWeaver Portal navigation into WebSphere Portal on a page named SAP navigation. The navigation is retrieved new from the SAP NetWeaver Portal for each WebSphere Portal session and used for the duration of that session.
  • For integrating individual pieces of SAP NetWeaver Portal content.WebSphere Portal also provides a portlet for integrating individual pieces of SAP NetWeaver Portal content.
New Configuration Wizard for Administrators :
 WebSphere Portal V8 simplifies the migration from WebSphere Portal V6.1.5 or V7 by reducing the lengthy migration time. With WebSphere Portal V8, migration is as smooth as a software upgrade.

Theme Modular Framework: New optimized theme presents a modularized framework for greater control of web site design, staging and production. The module framework allows extensions to contribute to different areas of a page to provide flexibility, enhance the user experience, and maximize performance.

IBM Forms: Easy form creation :
Provides agile, easy to build and manage web experiences for compelling, interactive data capture/forms that fit within the overall portal web experience. IBM Forms offers businesses the ability to respond to changing business requirements without expensive, time-consuming development cycles. IBM Forms also empowers business users to build and manage their own applications to collect and analyze structured information from customers, partners, and employees.

Included Web Experience Factory V8 provides:
  • A new user experience with Dojo Mobile tooling for building engaging mobile experiences.
  • New Client Side Architecture reducing reliance on bandwidth and improving responsiveness of mobile applications.
  • New Web Experience Factory builder for development of solutions that integrate Content Management Interoperability Services (CMIS) content including CMIS standard data stores like Filenet and Microsoft Sharepoint.
Hightlights of WCM features :
  • WCM Customizable Authoring home page for different type of users.
  • WCM RESTFull service
  • Site areas are now treated as content (can map presentation template directly to siteareas)

The module framework in Websphere portal server 8.0


The module framework allows extensions to contribute to different areas of a page to provide flexibility, enhance the user experience, and maximize performance.
The framework provides logical points where modules can contribute data into a theme at run time and to optimize those contributions by combining them where possible. This framework allows multiple disparate remote sources to be combined into one request for greater performance.
It also provides a way to enable and disable features of a theme by means of configuration, through a profile. You can spend your time focusing on the interface design of the theme without being concerned about the details of how to get features to work correctly within their theme. It also provides them an easy way of turning off features that they do not need in one environment that they might use in another environment.
For example, you can disable editing capabilities in a production portal environment while enabling them in a development environment. The same theme code can be used across such environments where the only variable is the module inclusion profile.
Modules are registered extensions and then consumed by a module profile. Each module is enumerated by the modules unique identifiers. Modules might require other modules to allow the automatic inclusion of necessary code required to make a particular feature work.
Deferred and nondeferred modules:
The module framework allows a profile to specify whether to defer a particular module. By default, a module is loaded when the initial page loads, but modules that are specified as deferred modules are loaded after the page loads.
Nondeferred modules are enabled whenever a request for a page is made to the portal servlet resulting in a full page refresh. Use a client-side JavaScript module to load resources associated with deferred modules on demand. For example, load deferred modules when entering edit mode for a page. Resources that are not required in view mode can be lazy loaded when the page mode is changed to edit.
Note: If you enter edit mode while using the deferred profile available out of box, the following error displays when using a JavaScript console: dojo.back.init() must be called before the DOM has loaded. If using xdomain loading or djConfig.debugAtAllCosts, include dojo.back in a build layer. This error is thrown by dojo because the dojo.back package is loaded in a deferred way. This code path is used only by older browsers which are no longer supported. This JavaScript error has no affect on functionality.
If a nondeferred module requires a deferred module, the server-side combiner framework promotes the deferred module to be nondeferred. The promoted module is then loaded during the initial page rendering process. The module is not deferred, and all of its contributions to each extension point are displayed in view mode. Also, the contributions are not included when any remaining deferred modules are loaded later.
Because deferred modules are loaded distinctly after a page loads, the types of resources that can be deferred are necessarily a subset of what can be loaded. CSS, JavaScript code, and markup can be deferred. Therefore, the following rules define when contributions to various places are loaded for deferred modules.
  • CSS contributions to the head are deferred and then inserted into the <head> element on demand by using the <link> element.
  • JavaScript configuration, both static and dynamic for both head and config spots, is deferred and loaded as JavaScript.
  • Static JavaScript code contributions to the head and config spots are deferred and loaded as JavaScript.
  • Markup contributions are lazy loaded by requesting the markup data for all deferred modules that contribute to the config or head markup section. This data is inserted into the page at the appropriate location based on where the spot is defined by the theme template.
Note: Because markup contributions can be lazy loaded when a module is deferred, certain limitations apply to the markup inserted dynamically using JavaScript. Script elements, for example, do not run when inserted into the markup as an HTML string. Modules that can be deferred must not generate script elements in their markup contribution to the config spot, unless they are used for another semantic purpose, for example, setting the type attribute to some value unknown to the client browser. The framework does not check for or handle any markup that results in side effects or unintended behavior. It is up to the module developer to handle any unintended behavior.
Do not use portal render request-dependent attributes, because there is no guarantee that those attributes are available in all cases. For example, when used in deferred mode, the render context is not available.

Sunday, June 9, 2013

Audit logging features in WebSphere Portal 7

IBM WebSphere Portal provides an auditing feature that allows users to log certain events and their originators into a separate log file. This file can then be used to track administrative activities. For each event the timestamp, an optional transaction ID, the user performing the action, and individual event details are logged. If the user “ABC” is performing the action is being impersonated by another user “ XYZ”, the user is shown as [ABC [XYZ]] in the log file.

You can use the auditing function on the following events:

  • Creating, modifying and deleting users and groups
  • Creating, modifying and deleting portlet applications by using the portal user interface
  • Assigning and revoking roles to and from users
  • Modifying role blocks
  • Modifying resource ownership
  • Creating, modifying and deleting protected resources
  • Externalizing and internalizing resources
  • Installing and uninstalling Web modules
  • Creating and deleting application roles
  • Assigning and revoking application roles to and from users
  • Adding and deleting roles to application roles
  • Initializing a database domain
  • Creating, modifying and deleting portlet applications by using IBM Lotus Component Designer.
  • Starting and ending impersonating a user or impersonating a user without the appropriate permission

To activate and configure the auditing function, modify the auditing service settings in the Auditing Service using the steps provided in the Setting service configuration properties file.

Auditing Service:
The auditing service allows you to log a set of events into a separate audit log file. All events are organized in groups. For example, the logging events User created and User deleted are grouped together and can therefore only be switched on or off together. The section Available events lists and describes the events that are available for auditing.

The audit logging output is written to the audit log file. No other log messages are written to this file. For an explanation of the contents of the audit log file refer to the section Audit log file.


 Auditing service configuration:

By default the audit logging service is disabled. This means that the service is loaded, but does not register any event listeners for audit logging. The auditing service configuration is controlled by the AuditService.

audit.service.enable = (false)

This is the global switch. Use it to switch the service on (true) or off (false). The default setting is false.

The actual log file access of the service can be configured by using the following two properties:

audit.logging.class = com.ibm.wps.services.audit.logging.impl.AuditLoggingImpl

This property points to the logging class which writes the actual log statements to the log file. By default, this is set to the default implementation. Under normal circumstances there is no reason to replace it with another class.

audit.logFileName = log/audit_$create_time.log

This property defines the location and the name of the audit log file. The placeholder $create_time is replaced by a timestamp during filename generation. A second placeholder $APPSERVER_NAME is used for a vertical cluster configurations to make the log file name unique.

Example:

audit.logFileName = log/audit_$APPSERVER_NAME_$CREATE_TIME.log

The auditing service allows you to have the transaction ID written to the audit log file. As these IDs can be very long and might not be required in every environment, you can disable the inclusion of the IDs.

audit.showTransactionID.enable = (true)
Use this property to disable transaction IDs in the audit log. To do this, change the value to false. The default value is true.

You determine the events that you want to be logged by enabling the appropriate properties as required. Set the events that you want to enable to the value true. The following groups of events are defined:
                               audit.groupEvents.enable

                               audit.userEvents.enable

                               audit.portletEvents.enable

                               audit.roleEvents.enable

                               audit.roleBlockEvents.enable

                               audit.ownerEvents.enable

                               audit.resourceEvents.enable

                               audit.externalizationEvents.enable

                               audit.userInGroupEvents.enable

                               audit.webModuleEvents.enable

                               audit.applicationRoleEvents.enable

                               audit.principalToApplicationRoleMappingEvents.enable

                               audit.roleToApplicationRoleMappingEvents.enable

                               audit.domainAdminDataEvents.enable

                               audit.designerDeployServiceEvents.enable

                               audit.impersonationEvents.enable

 The default value for all of these settings is false. That means that no events will be logged by default, even if you have switched the service on by setting the property audit.service.enable to true. For more details about which events are included in each group refer to Available events .

To enable one or more groups of events, change the default value of the appropriate audit.eventGroup.enable property to true.

Audit log file:
The log file contains one audit log message per line. All log messages start with a timestamp, followed by the optional transaction ID, the message code and the event message. Each event message contains the following:

  • The user ID of the user who has performed the action which triggered the audit event
  • Additional information about the event itself.
Events for actions that run in a transaction are written to the log file when the transaction is committed. If the transaction is rolled back, no event messages are written to the log file.

Events for actions that do not run in a transaction are written to the log immediately. In such cases it is not guaranteed that the related action was completed successfully.


Available events:

This section lists the events that you can log by using the auditing service. They are listed by the groups in which they are available. If you enable one group, all events in that group are logged. listed by the groups in which they are available. If you enable one group, all events in that group are logged.
 
Audit logging group
Audit logging event
Meaning of the event
audit.groupEvents
Group created event
A new user group has been created via portal UIs.
 
Group modified event
A user group has been modified via portal UIs.
 
Group deleted event
A user group has been deleted via portal UIs.
audit.userEvents
Portlet Application created event
A new web module or portlet application has been created via portal UIs.
 
Portlet Application modified event
A web module or portlet application has been modified via portal UIs.
 
Portlet Application deleted event
A web module or portlet application has been deleted via portal UIs.
audit.portletEvents
Portlet Application created event
A new web module or portlet application has been created via portal UIs.
 
Portlet Application modified event
A web module or portlet application has been modified via portal UIs.
 
Portlet Application deleted event
A web module or portlet application has been deleted via portal UIs.
audit.roleEvents
Role assigned event
A portal role has been assigned to a user. The user has been given the specified type of access permission on all resources that are affected by this role. For example, this can be EDITOR on Page1.
 
Role unassigned event
A portal role has been unassigned from a user. The user no longer has the specified access rights on the resources that are affected by this role. For example, the user is no longer EDITOR on Page1.
audit.roleBlockEvents
Role block modified event
The portal role block information of a resource has been changed. The event message contains a list of blocked and non-blocked roles on the given resource. As roles can either be inherited or propagated, there are two separate lists for inheriting roles and propagating roles. If only propagating role blocks have been changed, the list for inheriting roles is empty and vice versa.
audit.ownerEvents
Resource owner modified event
The owner of a resource has been changed.
audit.resourceEvents
Resource created event
A new resource has been registered. This event is triggered when the resource is registered in Portal Access Control.
 
Resource modified event
A registered resource has been modified.
 
Resource deleted event
A registered resource is no longer registered in Portal Access Control. This usually happens when a resource is deleted.
audit.externalizationEvents
Resource externalized event
A resource has been externalized. This means that access permissions to this resource are no longer controlled by Portal Access Control, but by an external Access Manager. For example, this can be Tivoli Access Manager.
 
Resource internalized event
A resource has been internalized. It is now controlled by Portal Access Control and no longer by an external Access Manager.
audit.userInGroupEvents
User added to group event
A user has been added to a group. The user is now a member of this group and therefore inherits access rights from the group.
 
User removed from group event
A user has been removed from a group. The user is no longer a member of that group and does no longer have the inherited access rights.
audit.webModuleEvents
Web Module installed event
A new web module has been installed or deployed.
 
Web Module uninstalled event
An installed web module has been uninstalled.
audit.applicationRoleEvents
Application role created event
An application role has been created.
 
Application role deleted event
An application role has been deleted.
audit.principalToApplication
RoleMappingEvents
Application role assigned event
An application role has been assigned to a user. The user has been given the access permissions contained in all the roles that are aggregated in this application role.
 
Application role unassigned event
An application role has been unassigned from a user. The user no longer has the access permissions contained in all the roles that are aggregated in this application role.
audit.roleToApplication
RoleMappingEvents
Role added to application role event
A portal role has been added to an application role. All permissions contained in the portal role are added to the application role. Effective immediately, these added permissions are given to all users or groups to whom the application role is currently assigned.
 
Role removed from application role event
A portal role has been removed from an application role. The users who had this application role no longer have the access permissions that are contained by this role.
audit.domainAdminData
Events.enable
Domain administration data initialized event
The administrative data for a domain, such as administrative user, administrative group, and virtual root resource, has been initialized during the startup of the portal. For the lifetime of the current portal process, this user and group have administrative permissions on the domain resource hierarchy, starting from the virtual root resource. For details about this refer to the Access Control Data Management Service. This event is always thrown for each defined domain during server startup. As this is done by the system, no performing user will be logged.
audit.designerDeployService
Events.enable
Component installed event
A portlet application has been created by using IBM Lotus Component Designer.
 
Component modified event
A portlet application created by using IBM Lotus Component Designer has been modified.
 
Component uninstalled event
A portlet application created by using IBM Lotus Component Designer has been deleted.
audit.impersonationEvents
Impersonation started event
A user started impersonation with another user.
 
Impersonation ended event
A user ended impersonation with another user.
 
Impersonation attempted with no permission event
A user tried to impersonate another user but has no permission.