Microsoft UAG Server 2010: Making “Sign Out” link visible in SharePoint Portal

When publishing SharePoint portal through the Microsoft UAG Server it removes the default “Sign Out” link on the SharePoint portal which is otherwise visible when accessing internally (Corporate network without going through UAG). Some people do think this as an issue but really this isn’t an issue rather a feature of UAG. UAG Portal has a “log Off” button which when used logs the user off from the main UAG portal and terminates all connections from UAG to the internal servers. In some scenarios you don’t want to remove the “Sign Out” link. You can do that but there are few limitations to this. And, I will be discussing about them towards the end.

How to do it?

There are two possible ways to do it;

1. Create another portal and use the SharePoint as an initial application without a portal frame
2. Remove the “Hideout” references to logout from the AppWrap templates

For #1, all you need to do is create a new portal, add SharePoint application and then make it the initial application without portal frame as shown below.

Then, copy the file C:Program FilesMicrosoft Forefront Unified Access GatewayvonConfWebSites<Portal Name>confWhlFiltAppWrap_HTTPS.xml into the C:Program FilesMicrosoft Forefront Unified Access GatewayvonConfWebSites<Portal Name>confCustomUpdate folder. Edit the file in notepad and remove the following code.

    <DATA_CHANGE>
    <!-- for sharepoint 2007 conditional appwrap hide log off   -->
    <URL case_sensitive="false">.*.aspx.*</URL>
         <SAR conditional_variable="DontShowLogoff" conditional_var_value="True">
            <SEARCH encoding="base64">U2lnbk91dC5hc3B4Jzsi</SEARCH>
            <REPLACE encoding="base64">U2lnbk91dC5hc3B4JzsiIHN0eWxlPSJ2aXNpYmlsaXR5OmhpZGRlbjsi</REPLACE>
        </SAR>
        <SAR conditional_variable="DontShowLogoff" conditional_var_value="False">
                <SEARCH encoding="base64">PC9UaXRsZT4=</SEARCH>
                <REPLACE encoding="base64">PC9UaXRsZT48c2NyaXB0IGxhbmd1YWdlPSJKYXZhU2NyaXB0IiBzcmM9IldobE93blVSTHNjcmlwdHMvQ2FjaGVDbGVhbi5qcyI+PC9zY3JpcHQ+PHNjcmlwdCBsYW5ndWFnZT0iSmF2YVNjcmlwdCIgc3JjPSJXaGxPd25VUkxsb2dvZmZQYXJhbXMuYXNwP3NpdGVfbmFtZT1XaGxTaXRlTmFtZSZzZWN1cmU9V2hsU2VjdXJlIj48L3NjcmlwdD4NCiAgICAgICAgICA8c2NyaXB0IGxhbmd1YWdlPSJKYXZhU2NyaXB0IiBzcmM9IldobE93blVSTHNjcmlwdHMvbG9nb2ZmLmpzIj48L3NjcmlwdD4=</REPLACE>
        </SAR>
        <SAR conditional_variable="DontShowLogoff" conditional_var_value="False">
            <SEARCH encoding="base64">b25NZW51Q2xpY2s9IndpbmRvdy5sb2NhdGlvbiA9ICcvX2xheW91dHMvU2lnbk91dC5hc3B4Jzsi</SEARCH>
            <REPLACE encoding="base64">b25NZW51Q2xpY2s9ImphdmFzY3JpcHQ6ZW5kU2Vzc2lvbigpIg==</REPLACE>
        </SAR>
    </DATA_CHANGE>

Last, activate the configuration

For #2, you need to follow the steps below;

  • copy the file C:Program FilesMicrosoft Forefront Unified Access GatewayvonConfWebSites<Portal Name>confWhlFiltAppWrap_HTTPS.xml into the C:Program FilesMicrosoft Forefront Unified Access GatewayvonConfWebSites<Portal Name>confCustomUpdate folder. Edit the file in notepad and remove the following code.
    <DATA_CHANGE>
    <!-- for sharepoint 2007 conditional appwrap hide log off   -->
    <URL case_sensitive="false">.*.aspx.*</URL>
         <SAR conditional_variable="DontShowLogoff" conditional_var_value="True">
            <SEARCH encoding="base64">U2lnbk91dC5hc3B4Jzsi</SEARCH>
            <REPLACE encoding="base64">U2lnbk91dC5hc3B4JzsiIHN0eWxlPSJ2aXNpYmlsaXR5OmhpZGRlbjsi</REPLACE>
        </SAR>
        <SAR conditional_variable="DontShowLogoff" conditional_var_value="False">
                <SEARCH encoding="base64">PC9UaXRsZT4=</SEARCH>
                <REPLACE encoding="base64">PC9UaXRsZT48c2NyaXB0IGxhbmd1YWdlPSJKYXZhU2NyaXB0IiBzcmM9IldobE93blVSTHNjcmlwdHMvQ2FjaGVDbGVhbi5qcyI+PC9zY3JpcHQ+PHNjcmlwdCBsYW5ndWFnZT0iSmF2YVNjcmlwdCIgc3JjPSJXaGxPd25VUkxsb2dvZmZQYXJhbXMuYXNwP3NpdGVfbmFtZT1XaGxTaXRlTmFtZSZzZWN1cmU9V2hsU2VjdXJlIj48L3NjcmlwdD4NCiAgICAgICAgICA8c2NyaXB0IGxhbmd1YWdlPSJKYXZhU2NyaXB0IiBzcmM9IldobE93blVSTHNjcmlwdHMvbG9nb2ZmLmpzIj48L3NjcmlwdD4=</REPLACE>
        </SAR>
        <SAR conditional_variable="DontShowLogoff" conditional_var_value="False">
            <SEARCH encoding="base64">b25NZW51Q2xpY2s9IndpbmRvdy5sb2NhdGlvbiA9ICcvX2xheW91dHMvU2lnbk91dC5hc3B4Jzsi</SEARCH>
            <REPLACE encoding="base64">b25NZW51Q2xpY2s9ImphdmFzY3JpcHQ6ZW5kU2Vzc2lvbigpIg==</REPLACE>
        </SAR>
    </DATA_CHANGE>
  • Copy C:Program FilesMicrosoft Forefront Unified Access GatewayvonConfWizardDefaultsAppWrapTemplatesHTTPS_WhlFiltAppWrap_ForPortal.xml under the C:Program FilesMicrosoft Forefront Unified Access GatewayvonConfWizardDefaultsAppWrapTemplatesCustomUpdate
  • Delete the same code you deleted in step 1.
  • Save and activate the configuration

Although #2 seems to be the ideal process that gives you the option to “Sign out” but there is a limitation to this. Normally SharePoint portal when logged out requires the user to close the browser to complete the Sign out process. Since this is a UAG portal controlled login, UAG does not interfere in this process of logging out through SharePoint portal. So, users will see the following message whenever they logout using the “Sign Out” link.

Cheers !!