How to Configure Federated Impersonation (Remote Content Source)

About

Remote Content Sources are backends which require log-in to the source system in order for users to get back results.

The user is prompted to log in to the source system whenever the current search page is configured to show results from a Remote Content Source.

You must enable and configure the Federated Impersonation Onboarding Module for the prompt to appear.

More information about the Onboarding Modules here.

How to Enable Federated Impersonation Section in Personalization

Federated Impersonation default settings are located  themodulesdirectory at:\modules\SmartHubResourceLoader\DefaultModuleSettings.js.

Check SH.UserPreferences.DefaultSettings for all of the available settings.

Do NOT modify the file DefaultModuleSettings.js.

The file is overwritten when SmartHub is upgraded.

Use the following steps to configure:

  1. All changes must be done via a custom settings file created for the page. 
    1. For information about creating and using custom settings files, see How to Customize Your SmartHub User Interface.
  2. Once your page's custom settings file is created, open the file for editing.

  3. Change the section SH.UserPreferences.CustomSettings to resemble the code snippet below.

    Federated Impersonation
    Copy
    SH.UserPreferences.CustomSettings = {    
        'PersonalizationTabsDefinitions': {
            'FederatedImpersonation': {
                    'label': 'Remote Content Sources'.toLocaleString(),
                    'enabled': true
                }
            }
    }

How Users Authenticate

After Federated Impersonation Onboarding Module is configured, user authentication flow starts as described below.

  1. The user is prompted to authenticate to the Remote Content Source.



  2. The user is then redirected to the authentication page.

  3. After consent is granted, the user is redirected back to the search result page and the query is performed again, this time including the recently approved backends.

Note: Both user authentication info messages can be changed in the web.config file, located in the SmartHub root directory.. 

  • For the authentication message see "FederatedImpersonationAuthenticationMessage". 
  • For the access denied message see "FederatedImpersonationAccessDeniedMessage". 

Changing the label can be done from the value field, but note that {BackendName} is used to display the Backend The search engine your SmartHub instance uses to perform queries. SmartHub can be configured to use more than one search engine. name configured in Admin UI.

User Personalization - Enable or Disable Remote Content Sources

Go to Personalization → Remote Content Sources.

A user can:

  • Choose if he wants to see results from a specific Remote Content Source.
  • Reset the current authentication token

Available options:

  • Show results from this Content Source
    • The "authentication required" message is displayed in search results and user is prompted for log in (via the Onboarding Module).
  • Ignore results from this Content Source
    • The "authentication required" info result is not displayed in search results and users are not prompted to log in
  • Reset Authentication
    • The reset option resets the authorization token and will make the SmartHub page prompt you to re-authenticate