Custom HTTP Module unable to read the HTTP Headers set by SiteMinder in the integrated pipeline mode.
Customer has developed a custom HTTP Module which is expected to read the HTTP Headers set by SiteMinder e.g. SM_USER, SM_USERDN etc. The application pipeline mode is set to integrated.
However, the custom HTTP Module is unable to read any of the HTTP Headers set by SiteMinder module.
Other observations :
After having a closer look at the IIS Failed request tracing it was found that the custom HTTP Module was registered for an event at a stage earlier than "AUTHENTICATE_REQUEST" which is where SiteMinder modules sets most of the HTTP headers.
The following tasks are performed by the HttpApplication class (in the order) while the request is being processed in the integrated pipeline mode.
So obviously, for any custom module to be able to read the HTTP headers set by SiteMinder module in the AUTHENTICATE_REQUEST phase, it has to be registered either at the AUTHENTICATE_REQUEST or any events after it e.g POST_AUTHENTICATE_REQUEST
Modify custom HTTP Module to register and read HTTP request headers set by SiteMinder at the event equal or after AUTHENTICATE_REQUEST.
Note : If there are two Modules subscribed to the same event in the request life-cycle (e.g AUTHENTICATE_REQUEST)..it is still possible to configure the order of the execution of the module by altering the RequestPriority. This has been covered in our bookshelf itself:
Release: ESPSTM99000-12.51-Single Sign On-Extended Support Plus