Citrix Single Sign On with Receiver and Receiver for Web

SSO Overview

There are to ways you can use SSO in a Citrix 7.5+ environment using built-in Citrix technologies:

  1. SSO via Citrix Receiver for Web
  2. SSO via the Citrix Receiver client

Depending on which method you choose the prerequisites differ, however not by much. Below are the prerequisites that are required for either method, meaning it doesn’t matter which method you choose the same prerequisites exist:

  1. Citrx Receiver must be installed on the client device with the SSON component installed
  2. Receiver for Web website must be in the Local Intranet Zone
  3. If using the Trusted Sites zone instead, Automatic logon with current username and password must be set in Trusted Sites zone (I will talk no further about using the Trusted Sites zone)
  4. Domain pass-through must be enabled on Receiver for Web via StoreFront console
  5. Requests sent to the XML service port on your DDCs must be trusted

Now below are the remaining unique prerequisites/differences for each method.

Receiver for Web

  1. Always use Receiver for HTML5 must not be selected in StoreFront
  2. Internet Explorer must be used when accessing Receiver for Web
  3. Group Policies do not need created for Receiver for Web SSO
  4. The User Name and Password Receiver for Web authentication method should be disabled to avoid extra prompts which will later be explained

Receiver client

  1. Group Policies do need created for Receiver client SSO

Installing and configuring SSO (Receiver for Web):

  1. Citrix Receiver client must be installed on the end device. The SSO component is not required so a simple GUI or command line interface command can be used to install the client.
  2. Using StoreFront MMC, enable Domain pass-through on Receiver for Web
  3. Using StoreFront MMC, disable User Name and Password authentication against Receiver for Web
  4. Launch Internet Explorer on logon by placing a shortcut in the Startup folder C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup. This should be done on the base/gold image
  5. Set Internet Explorers homepage to the Receiver for Web website address
  6. Create a GPO linked to all machnes participating in Citrix Receiver for Web SSO or use an existing policy
  7. Using the above created policy, edit the setting Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Internet Explorer -> Internet Control Panel to include the Receiver for Web website address in the Local Intranet zone

Decision: To get rid of the first-time logon prompt which will be shown later in this post, you need to disable User Name and Password authentication. Doing so partly reduces functionality:

  1. Non domain machines cannot authenticate to this Receiver for Web website
  2. Usrs can not log on using a set of credentials different than those they used to log on to their domain joined client device

Keeping the above restrictions in mind, a decision must be made to bring true SSO experience at the expense of reduced authentication ability, or accept that a prompt will be given to users on first log on to Receiver for Web in favour of keeping maximum authentication abilities. It is also possible to create a seperate Receiver for Web website for SSO users only, or create sites for non-SSO participants. This means you can configure seperate devices/users to point to specific Receiver for Web websites based on authentication needs.

Installing and configuring SSO (Receiver client)

  1. Citrix Receiver client must be installed on the end-device. The SSO component is required so a simple GUI or command line interface command can be used to install the client. A command line install if preferred because you can automate Citrix Store configuration. The following command at minimum is required to install Receiver client: CitrixReceiver.exe /includeSSON (tested on Receiver 4.3)
  2. Using StoreFront MMC, enable Domain pass-through on Receiver for Web
  3. Download and copy receiver.admx and receiver.adml template files to the PolicyDefinitions folder on a Domain Controller
  4. Create a GPO linked to all machines participating in Citrix Receiver client SSO or use an existing one
  5. Using the above created policy, edit the setting Computer Configuration -> Policies -> Administrative Templates -> Citrix -> Components -> Citrix Receiver -> Local User Name and Password enabling Enable pass-through authentication
  6. Using the above created policy, edit the setting Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Internet Explorer -> Internet Control Panel to include the Receiver for Web website address in the Local Intranet zone

The Receiver for Web logon prompt

Now that we have discussed the prompt and the advantages/disadvantages with enabling/disabling this feature, here below is a picture of what the prompt actually is and looks like.

1

 

When you have enabled Domain pass-through and User name and Password authentication on Receiver for Web, the first time a user logs on they get this prompt to either log on using the account used to sign on to the computer or to switch to the username and password logon screen. The user name and password logon screen gives the user the ability to authenticate with any set of credentials they have. Since I mention “first time” above, first time means the first time a user logs on to Receiver for Web on a device that they have never used before. The next time they use the same machine the same prompt does not appear. If you log off, you may also get the below message.

23-min

If the device is a thin-client with a write-based restrictive filter, the profiles may not be stored and as such the user is using that machine for the first time every time as far as the device is concerned after said device is restarted. This reduces the SSO experience, as the prompt requires manual input. Users wanting true SSO experience must disable User name and Password authentication. User name and Password authentication conflicts with SSO and is not required. A seperate Receiver for Web site must be created for users who do require the User name and Password authentication method. User name and Password is enabled by default when you install Citrix StoreFront.2

The User Name and Password authentication method

Configuring SSO for Receiver client

Now that we have covered the theory, I will walk through configuring SSO for Receiver client. I won’t go through SSO with Receiver for Web but it is just as similar to configure.

 

Install Citrix Receiver on the client device with SSON component included. I am using a command to install. The command automatically configures the store.

3

You could also enable SSO by checking the box on newer versions (4.3+) if you prefer however you will have to manually configure the store or use the Receiver ADMX templates with Group Policy.1-min

Insert the Receiver for Web site in the Local Intranet Zone. If using the Trusted Sites zone instead, Automatic logon with current username and password must be set in the Trusted Sites zone. In most cases you will use the Local Intranet zone. This is best done via GPO.

Values:

  1. Intranet Zone = 1
  2. Trusted Sites = 2

4

 

If using the Trusted Sites zone, enable Automatic logon with current username and password.

5

Enable Domain pass-through on Receiver for Web via StoreFront console and remove other authentication method(s). Pass-through from NetScaler Gateway can be enabled, however User name and password should not.6

On your DDCs requests sent to the XML service port on your DDCs must be trusted, so run the following command:7

8

Configure Group Policy to enable pass-through authentication on Receiver. You will need to have imported the Receiver.admx and Receiver.adml files to the Group Policy Central Store.9

Outcome

Now if you open the Citrix Receiver client on your device, it should not ask to configure the store or ask for credentials. Instead, you will be passed through to StoreFront and presented with your subscribed applications and desktops.10

Be aware after installing Receiver you must log off/on to your client device for the SSONSVR.EXE process to start and capture your credentials.

11

 

Additional feature – Desktop Lock

You can also turn your PC/Thin Clients in to kiosk type machines using what is called Citrix Desktop Lock. When a user logs on to their device the Citrix desktop automatically launches in full-screen mode and if the user disconnects or logs off the Citrix desktop the user is automatically logged off the local device. This is great in a VDI environment if you want to bring a true no-touch experience to your users. You can download Desktop Lock from the Citrix website.

12

 

Once downloaded launch the Citrix Desktop Lock software on an SSON configured client device.

13

 

Click Close once the software has installed.

14

 

Restart the client device.15

 

Now log on as a standard user who has one Citrix desktop assigned to them.16

 

Desktop Lock automatically launches the desktop in full screen.17

 

The Desktop Viewer toolbar has some missing buttons to prevent the user from minimizing the desktop for example.18

 

When the user disonnects or logs off, the local client device is also logged off. This helps secure the device and not leave any unattended workstations logged on.

19

 

If you need to control the local device yourself, log on as a user who is a Local Administrator of that machine and you will be presented with the below prompt.20

 

After clicking OK you can access the local desktop to perform management tasks.21

 

Troubleshooting SSO

  • The SSONSVR.EXE process must be running on your client device
  • Ensure you have met all the prerequisites stated above for your SSO method (Receiver client/Receiver for Web)
  • Using an SSO configured device go to https://yourstorefrontserver.domain.com/citrix/storename/domainpassthroughauth/test.aspx. The web address I would go to is https://storefront.citrixpro.co.uk/citrix/cpsweb/domainpassthroughauth/test.aspx and if SSO is correctly configured you should see results similar to the below. (Included in StoreFront 2.5)22
  • Restart the client device (requirement after Receiver install with SSON)

Receiver 4.5 (released September 2016):

New with Citrix Receiver for Windows 4.5 is the Configuration Checker tool which performs various checks against the prerequisites needed for SSO to work. Open Advanced Preferences by right-clicking the Receiver icon in the system tray. Click Configuration Checker. 24-min

Tick SSONChecker and click Run.25-min

As you can see a number of checks have been performed with one failure.26-min

Looking closer at the failure alert we can see the Single Sign-on process is not running. After installing the SSON components you only need to log off/on for the process to run. In this case, I deliberately left out the SSON component so it is not installed at all. Click on Save Report to save the results to .TXT.27-min

Heres a look at the results .TXT file.28-min

I’ve now ran the SSON Checker on a machine that is properly configured for SSO. As expected, all checks have passed.29-min

Receiver SSON logging:

You can enable SSON logging which may be help in identifying an issue.

Add a the following values to HKLM\Software\Citrix\Install\SSON (32bit) or HKLM\Software\WOW6432Node\Citrix\Install\SSON (64bit).

REG_SZ DebugEnabled = true

REG_SZ LogPath = Path location

When you log off and on again log files will be created relating to SSON.

The trace-pnsson.log file shows information such as the credentials captured and packaged by SSON.


15 Comments

  • Anonymous

    August 7, 2018

    Nice article. However I would review statement that for web SSO no group policies are needed.
    This is not correct.

    Reply
  • Petr Simek

    August 7, 2018

    I forgot to mention that GPO are not needed in the case you create required registry keys manually.

    Reply
    • George Spiers

      August 8, 2018

      You don’t need Citrix specific GPO settings when using SSO against Receiver for Web.

      Reply
  • Viktor

    October 7, 2019

    Very good article. I am wondering, if this could be done for Receiver for client but on HTTP. Or in other words – to use http base url in Storefront?

    Reply
    • George Spiers

      October 9, 2019

      Yes you can use HTTP however set ConnectionSecurityMode to Any under HKLM\SOFTWARE\WOW6432Node\Citrix\AuthManager

      Reply
  • CEM

    October 9, 2019

    Hello George,

    Thanks you for your article, very nice ! 😉
    You know, how to configure Citrix HTML5 for Pass-Through Authentication ?
    Many thanks.
    Best Regards.

    Reply
    • George Spiers

      October 15, 2019

      Follow the Receiver for Web steps in this guide and you’ll have SSO. Workspace app for HTML5 is a way to connect to resources without the need to install a client.

      Reply
      • CEM

        October 21, 2019

        Yes, I update the GPO > add the Receiver ADM/ADMX Templates to our configured GPO. Inside the Receiver Settings (Computer Configuration > Citrix Components > Citrix Receiver > User Authentication) you find the following setting:
        > Local user name and password
        Inside this you need to enable the following two settings thus the Receiver can automatically logon the user to the published desktop:
        > Enable pass-through authentication
        > Allow pass-through authentication for all ICA connections

        but the published desktop required a separate login instead of using the local username / password… Windows Login Prompt When Launching Published Desktop :-\
        Any ideas ?

        Thanks.

        Reply
        • George Spiers

          November 10, 2019

          Does it work fine when connecting using Workspace app? I have seen this before and a reinstall of the VDA has resolved.

          Reply
  • Raja

    February 20, 2020

    Hi George,

    Thank for the great article.

    Receiver for Web:- I am trying to access via IE11+Win10 machine. I am able to pass through at first stage and gives me all app icons as expected. Enumaration is perfect. But once I click on any app, it asks me to enter credentials server login prompt fires up. Could you advise what else I can check. This is really required for my project go live

    Receiver for Client: Pass through works seamlessly on the same machine when accessing via Client similar to legacy PNAgent services site

    SF3.12.5, VDA 2012 R2 7.15 LTSR CU5

    Regards
    Raja

    Reply
    • George Spiers

      May 19, 2020

      I have seen this before and a reinstall of the VDA has resolved.

      Reply
    • Sushil

      June 22, 2022

      Hi Raja,

      Were you able to sort this?

      Regards,
      Sushil

      Reply
  • Shen

    June 15, 2020

    Can we do sso to netscaler gateway url from a domain joined machine using the logged in user credentials?

    Reply
    • Kevin

      July 20, 2021

      I would like to do the same with netscaler gateway URL as Shen asked.
      Do you know the way to go ?

      Reply
  • Pingback: http citrix sso login com Account Portal Instructions Help Guide - trustne.com

Leave a Reply