Response Expression not Working

book

Article ID: 210809

calendar_today

Updated On:

Products

SITEMINDER

Issue/Introduction

Customer is attempting to set a web agent header variable response via expression based on the value of SM_AUTHENTICATIONLEVEL.  The response does not seem to be reading the SM_AUTHENTICATIONLEVEL successfully as the condition in the expression that should evaluate to true is not evaluating to true, and thus the variable is always set with the 'else' value.  We know SM_AUTHENTICATIONLEVEL is available during the tests because the customer is able to set other header vars based on the value of SM_AUTHENTICATIONLEVEL..

Cause

Incorrect expression syntax was being used.

Environment

Release : 12.8.03

Component : SITEMINDER -POLICY SERVER

Resolution

This is the expression that worked:

AAL=<$expr="((SM_AUTHENTICATIONLEVEL)='5'?'1':((SM_AUTHENTICATIONLEVEL)='10'?'1':((SM_AUTHENTICATIONLEVEL)='15'?'1':((SM_AUTHENTICATIONLEVEL)='330'?'2':'3'))))" $>

The result is:
if SM_AUTHENTICATIONLEVEL is 5, 10, or 15, then set the HTTP_AAL variable to 1
If SM_AUTHENTICATIONLEVEL is 330, then set HTTP_AAL to 2
else set HTTP_AAL to 3.