Navigation
This article applies to StoreFront versions 2411, 2402 LTSR, 2203 LTSR, 1912 LTSR CU8 and all other versions 3.5 and newer.
- Change Log
- Disable CRL Checking to speed up .NET
- StoreFront can control Receiver Shortcut placement
- PNAgent – Authentication and Default Store
- Hide Applications/Desktops from the Store
- Desktop Autolaunch
- Force desktops to launch full screen
- Autolaunch Applications
- Store for Anonymous users
- Workspace Control
- Treat Desktops as Applications
- Enable Special Folder Redirection
- Disable “Remember My Password” in Receiver Self-Service
- Remove “Activate” Option from Receiver for Web
- Log Off RfWebUI seconds after an Icon Launch
- Customize Appearance of Receiver in StoreFront 3.0 and newer
- StoreFront SDKs
💡 = Recently Updated
Change Log
- 2023 Aug 16 – added info from CTX572543 How to auto launch published app while logon Storefront Web URL
- 2019 Aug 10 – removed HTML5 Tour tweak
- 2018 Jun 25 – Customize Appearance – added info from CTX236110 How to customize the storefront website title
- 2018 May 25 – Customize Appearance – added CTP Sam Jacobs at StoreFront: Add Application Categories to Favorites Tab
- 2018 Jan 28 – in Customize Appearance section, added link to John Billekens Hide or change “domain\user or username@domain.com” text in Storefront
- 2018 Jan 27 – in Customize Appearance section, added link to George Spiers Insert Client IPs into the StoreFront logon page.
- 2017 Jan 3 – in Customize Appearance section, added link to CTP Sam Jacobs and Rich Minichiello Adding an EULA Checkbox to StoreFront logon page
- Also added link to Citrix Blog Post How To: Add a Server Identifier to the StoreFront Page Footer.
- 2017 Jan 2 – in Customize Appearance section, added link to Trentent Tye Add a help button to your Storefront UI
- 2017 Dec 15 – in Customize Appearance section, added link to Citrix Blog Post Change Details links to stars
- 2017 Dec 2 – updated Docs links for 3.13 (current-release)
CRL Checking – Disable
When the StoreFront server checks certificate revocation for its locally signed files, a delay can occur before the StoreFront logon page is displayed.
- Run the following PowerShell commands:
Add-PSSnapin Citrix.DeliveryServices.Framework.Commands Set-DSAssemblyVerification $false
- Another potential tweak to speed up StoreFront is to disable NetBIOS. Right-click the Start Menu and click Network Connections.
- Right-click the NIC and click Properties.
- Highlight Internet Protocol Version 4 and click Properties.
- Click Advanced.
- On the WINS tab, change the selection to Disable NetBIOS over TCP/IP and click OK twice and Close once.
- Repeat on the other StoreFront servers.
Note: According to Microsoft, it is no longer necessary to configure generatePublisherEvidence in C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet.config.
Receiver Shortcuts
You can use StoreFront to control placement of shortcuts on Receiver machines.
- Run Notepad elevated (as administrator).
- Edit the file C:\inetpub\wwwroot\Citrix\Roaming\web.config.
- Search for <account id. Find the Store name in the name attribute.
- Scroll down to the first <properties> section located under <annotatedServices>.
- See Using StoreFront account settings to customize app shortcut locations at Citrix Docs for a list of properties. Add the properties as detailed at Citrix Docs. The properties should be added after the clear tag.
- Note: if subscriptions are enabled in StoreFront then only Favorites are added to the Start Menu and Desktop. If subscriptions are disabled then all applications are placed on the Start Menu or Desktop.
- Close and save the file.
- Then Propagate Changes.
PNAgent Authentication and Default Store
Default Store
If you point your browser to https://storefront.corp.com/Citrix/PNAgent/config.xml, which is the typical path for PNAgent, you’ll get a 404.
To fix this, in the StoreFront console, right-click the store, and click Configure XenApp Services Support.
In the bottom of the window, select the Default store, and click OK.
Now PNAgent can point to StoreFront without needing to specify a custom path. Note: this only works for /Citrix/PNAgent/config.xml.
Single Sign-on
From Configure authentication for XenApp Services URLs at Citrix Docs: XenApp Services URLs support explicit, domain pass-through, and pass-through with smart card authentication. Explicit authentication is enabled by default. You can change the authentication method, but only one authentication method can be configured for each XenApp Services URL. To enable multiple authentication methods, create separate stores, each with a XenApp Services URL, for each authentication method. To change the authentication method for a XenApp Services URL, you run a Windows PowerShell script.
- On the primary StoreFront server in your deployment, use an account with local administrator permissions to start Windows PowerShell.
- At a command prompt, type the following command to configure the user authentication method for users accessing the store through the XenApp Services URL.
& "C:\Program Files\Citrix\Receiver StoreFront\Scripts\EnablePnaForStore.ps1" –SiteId 1 -ResourcesVirtualPath /Citrix/Store –LogonMethod sson
- Propagate changes.
Remember my password
If you leave PNAgent authentication set to Prompt, you can enable the Remember my password box by doing the following:
- Run Notepad as Administrator and edit the file C:\inetpub\wwwroot\Citrix\Store\Views\PnaConfig\Config.aspx.
- Near line 74 is EnableSavePassword. Change it to true.
- When PNAgent connects, there should now be a Remember my password checkbox.
Hide Applications
You can hide all icons of a particular type (Applications, Desktops, Documents). Or you can hide icons with a specific keyword.
Go to Stores > MyStore > Configure Store Settings > Advanced Settings, and look for the Filter options.
Filter resources by type lets you hide all Applications or all Desktops. If you are running Receiver inside a published desktop, then you probably don’t want desktop icons to be delivered by Receiver. In that case, create a new Store and filter the Desktop icons. Then only the application icons will be delivered.
Filter resources by excluded keywords lets you filter published icons that match a custom keyword.
Once the ExcludeKeyword has been defined, add the keyword to a published application or published desktop description, and that application/desktop will no longer display in Receiver. This works for both Receiver for Web and Receiver Self-Service (non-browser).
In XenDesktop 7.9 and and newer and Citrix Virtual Apps and Desktops, to assign a description to a Desktop, you edit the Delivery Group, go to the Desktops page, and edit one of the Desktops. Citrix CTX220429 Configure Resource Filtering to Allow Desktops to be filtered on Storefront.
Desktop Autolaunch
By default, if only a single desktop is published to the user, Receiver for Web will auto-launch it. You can change this behavior by going to Stores > MyStore > Manage Receiver for Web Sites > Configure > Client Interface Settings and uncheck the box next to Auto launch desktop.
Full Screen Desktop
Citrix CTX139762 How to Configure StoreFront to Start Published Desktops in Full Screen Mode: This article describes how to configure StoreFront to start published desktops in Full Screen Mode.
- Open the file C:\inetpub\wwwroot\Citrix\Store\App_Data\default.ica on the StoreFront server(s) with notepad (as Administrator)
- Add the line:
[Application] DesktopViewer-ForceFullScreenStartup=On
- In older versions of StoreFront, it should be true instead of On.
- Save the file.
- Open the command prompt (cmd) and run iisreset.
Autolaunch Application
See CTX572543 How to auto launch published app while logon Storefront Web URL. Add the following code to the end of C:\inetpub\wwwroot\Citrix\<StoreName>Web\custom\script.js.
var ctxAppName = "AppName"; CTXS.Extensions.noteApp = function (app) { if(app.name == ctxAppName){ CTXS.ExtensionAPI.launch(app); } };
See the script.js code posted by Michael Bednarek at Citrix Discussions.
Store for Anonymous
If you intend to publish applications to anonymous users, then you can create a StoreFront store that does not require authentication. Note: anonymous stores only work internally (no NetScaler Gateway).
- On the VDAs, create and configure anonymous accounts.
- In Citrix Studio, configure a Delivery Group to accept unauthenticated (anonymous) users.
- In the StoreFront Console, right-click Stores, and click Create Store.
- In the Store Name and Access page, enter a new store name.
- Check the box next to Allow only unauthenticated users to access this store.
- Then click Next and finish the wizard like normal.
- By default, Anonymous stores are hidden (not advertised). When performing discovery in Receiver you’ll need to enter the full path to the store (e.g. https://storefront.corp.com/Citrix/Anon/discovery).
Workspace Control
Workspace Control reconnects user sessions. It can be disabled. Or configure various reconnection options.
Citrix Blog Post Workspace Control: When You DON’T Want to Roam details complete session reconnection configuration instructions for XenApp, Remote Desktop Services, StoreFront, and Receiver.
Receiver for Web
Go to Stores > MyStore > Manage Receiver for Web Sites > Configure > Workspace Control page.
Receiver Self-Service
Citrix Blog Post – How to Disable Workspace Control Reconnect: For Receiver for Windows, Workspace Control can be managed on client devices by modifying the registry. Please see this Knowledgebase Article for how to implement it. This can also be done for domain-joined client devices using Group Policy.
In StoreFront Console, go to Stores > MyStore > Configure Store Settings > Advanced Settings, and there’s a setting for Allow session reconnect.
Treat Desktops as Applications
From Treating All Desktops as Applications at Citrix Blog Post What’s New in StoreFront 3.0: Desktops are treated differently from applications in StoreFront/Receivers. They are placed in a separate Desktop tab and in the case of Receiver for Web, they are not reconnected with workspace control. In some use cases, it is desirable to treat desktops as applications so that they are placed together with applications and get reconnected as part of workspace control. With StoreFront 2.x, you have to add the TreatAsApp keyword to all published desktops to achieve this effect. StoreFront 3.0 enables you to configure treating all desktops as applications at the store level without the need of adding the TreatAsApp keyword to all the published desktops. This is configurable using a PowerShell cmdlet.
& "C:\Program Files\Citrix\Receiver StoreFront\Scripts\ImportModules.ps1" Set-EnhancedEnumerationOptions -siteId 1 -storeVirtualPath /Citrix/Store ` -treatDesktopsAsApps $true
Also see Citrix CTX223817 How to Configure “TreatAsApp” in XenDesktop 7.8.
Special Folder Redirection
From Configure special folder redirection at Citrix Docs: With Special Folder Redirection configured, Citrix maps Windows special folders for the server, to those on their local computers. Special folders refer to standard Windows folders, such as \Documents and \Desktop.
In StoreFront Console, go to Stores > Configure Store Settings > Advanced Settings and there’s an option for Allow special folder redirection.
Receiver Self-service – Disable “Remember My Password”
By default, when Receiver Self-Service connects internally to StoreFront, the user is able to check the box next to Remember my password. Note: When connecting through NetScaler Gateway, this checkbox is never available.
This can be disabled by making a change on the StoreFront server. This procedure is documented by John Ashman at Citrix Discussions and Prevent Citrix Receiver for Windows from caching passwords and usernames at Citrix Docs.
- Note that this procedure seems to prevent Receiver for iOS from adding accounts.
- On the StoreFront server, run a text editor elevated (as administrator).
- Open the file
C:\inetpub\wwwroot\Citrix\StoreAuth\App_Data\Templates\UsernamePassword.tfrm.
- Go to line 20, which should start with
@SaveCredential
. - To comment out the line, wrap it in
@*
and*@
. Save the file when done.
- Now the Remember My Password checkbox is gone.
“Activate” Option in Web Page – Disable
From Citrix Discussions: to disable the “activate…”; function for Citrix receiver for windows that is visible when a user clicks their username in the upper right hand corner of Receiver for Web, in StoreFront Console, go to Stores > MyStore > Manage Receiver for Web Sites > Configure > Client Interface Settings page. There’s a checkbox for Enable Receiver configuration.
Logoff Receiver for Web Seconds after Icon Launch
From Citrix Blog Post Logging Off Receiver for Web after an Application/Desktop Launch: Simply add the following code snippet to script.js in the custom folder for the Receiver for Web site (typically C:\inetpub\wwwroot\Citrix\StoreWeb\custom\) you would like to customize:
var delayLogoffInSeconds = 10; CTXS.Extensions.beforeWebLogoffIca = function(action) { return 'none'; }; CTXS.Extensions.postLaunch = function(app, status) { if (! CTXS.Device.isNativeClient()) { if (status == CTXS.LAUNCH_SUCCESS) { function logoff() { CTXS.Environment.logOff(); } window.setTimeout(logoff, delayLogoffInSeconds * 1000); } } };
Customize Receiver UI in StoreFront 3.x
StoreFront 3.x customizations are visible in both Receiver for Web and in Receiver Self-Service.
Note: these customizations might not work in StoreFront 1811 and newer, which has a different user interface.
If you are load balancing StoreFront and want to put the server name on the webpage (or Receiver), see Citrix Blog Post How To: Add a Server Identifier to the StoreFront Page Footer. This works in StoreFront 1811 and newer.
George Spiers Insert Client IPs into the StoreFront logon page.
John Billekens Hide or change “domain\user or username@domain.com” text in Storefront: In C:\inetpub\wwwroot\Citrix\<Store>Web\custom\style.css, add the following to hide the text:
.credentialform span.pseudo-input.show { visibility: hidden; }
For StoreFront older than version 1811, Citrix Blog Post Dynamic Subscription Icons in StoreFront explains how to change the Details link to a star icon based on subscription status. The star icons are not clickable like they are in StoreFront 1811 and newer.
Trentent Tye at Citrix Storefront – Adventures in customization – Add a help button to your Storefront UI uses CTXS.ExtensionAPI.addHelpButton() and CTXS.ExtensionAPI.openUrl() to add a help button which opens a help page URL. This also works in StoreFront 1811 and newer.
CTP Sam Jacobs and Rich Minichiello Adding an EULA Checkbox to StoreFront logon page
From CTP Sam Jacobs at StoreFront: Add Application Categories to Favorites Tab at CUGC. It’s a simple matter to get it to again appear. Back up the file \inetpub\wwwroot\citrix\<store>Web\custom\style.css
, and add the following to the bottom of the file:
.largeTiles .myapps-view .storeapp-category { display: block; }
Nicolas Ignoto Lab: Part 22 – Ultimate StoreFront 3 customization guide contains many StoreFront customizations including:
- Add disclaimer
- Change logo/background
- Add header
- Add text
- Change colors
- Etc.
Citrix Blog Post Citrix Customization Cookbook contains a collection of customizations including:
- Add Static or dynamic (read from file) text to the header and/or footer of the login page.
- Click-through disclaimer before or after login page
- Footer for every page
- Default to Folder view when visiting the Apps tab
- Change default text
- Change background images for featured categories
- Background image
Citrix Blog Post Storefront 3 Web Customization: Branding Your Deployment describes how to modify the following CSS to customize the appearance of StoreFront 3.x
- Background images
- Logon button
- Colors for page and text
- How to view the mobile version of the page
- CSS for mobile pages
Jason Samuel Upgrading Citrix StoreFront 2.6 to StoreFront 3.0 – Things to Know details how to change the StoreFront logo to a Receiver logo.
Citrix Blog Post StoreFront Message Customization describes how to add a scrolling message to the top of the screen. This is displayed in both Browsers and Receivers. This post contains a new version of the executable that supports StoreFront 3.0 and newer.
Migrate Web Interface features to StoreFront at Citrix Docs details how to configure Web Interface features in StoreFront. This includes:
- Enable return to last folder
- Header logo
- Pre-logon welcome message
- Logon screen customization
- Footer text
The code for pre-login message is already included in C:\inetpub\wwwroot\Citrix\StoreWeb\custom\script.js. Just remove the comment. Source = Citrix CTX227805 StoreFront 3.11 >>How to get the login banner on Storefront page
Rody Kossen and his colleague Leon Koppel built a customisation layer that reads the state of the resources presented to the end-user. If a desktop is under maintenance, inform the user so he knows before he tries to access the resource. Get the code from Citrix Blog Post Putting the Experience First, Where it Belongs. 💡
StoreFront 3.0 Receiver Customization APIs are detailed at Citrix Developer. Use the Receiver Customization API to brand or customize your end users’ app and desktop selection experience beyond capabilities provided in the StoreFront admin console. Customizations apply to latest Web, Chrome, Windows, Mac and Linux clients, and will be extended to mobile devices in future releases.
- Trentent Tye at Citrix Storefront – Adventures in customization – Change any ICA parameter has code that allows HTTP Request Headers to change the ICA File Parameters. For example, HTTP Headers can change the Client Name, or pass Parameters to a published application.
- Trentent Tye at Citrix Storefront – Adventures in customization – Dynamically configure workspace control based on group membership used the API to dynamically enable/disable Workspace Control based on AD group membership. It uses a PowerShell-based HTTP server to process the group lookup.
- See Citrix Storefront – Adventures in customization – Dynamically configure features based on group membership to change authentication based on group membership
- See Citrix Storefront – Adventures in customization – Dynamically configure features based on group membership to change authentication based on group membership
- An example use case for the StoreFront 3.0 APIs is Citrix Blog Post Citrix Recipe Box: StoreFront Approvals. This code enables StoreFront to require workflow approval when a user subscribes to an app.
CTX221097 How to rename items on StoreFront? describes the strings that can be changed.
- Go to C:\inetpub\wwwroot\Citrix\<StoreName>Web\custom
- Open strings.en.js file
- See below for an example of overriding one of the built-in strings. See the article for the full list of strings.
- AppStore defines the title of the website. (Source = CTX236110 How to customize the storefront website title)
Citrix Blog Post Receiver X1 APIs describes the following:
- Overview of the CSS classes that can be customized.
- Override Citrix’s JavaScript functions to modify behavior – exclude or restyle apps, change a sort order, add a warning message etc.
- How to force X1 UI to display in either phone or larger mode.
Citrix Blog Post X1 Customization: Going deeper with CSS describes the following:
- Use CSS (/custom/style.css) to style the three custom regions (#customTop, #customBottom, #customScrollTop). Shown below in red, blue, and pink.
- Marker classes for showing/hiding or highlighting parts of the UI: large display, small display, high DPI, Favorites view, Desktops view, Apps view, appinfo view.
Citrix Blog Post Scripting X1 describes the following:
- JavaScript code to display an Acceptance dialog box before users can login.
- Use JQuery to add HTML code to custom regions (e.g. #customScrollTop) including using CSS to hide the HTML code unless a specific tab is selected by the user.
Citrix Blog Post – Rewriting the Session ClientName from StoreFront: I would like to offer the following customisation DLL which can apply client name rewrites based on a template. The customisation template can be any string, but where that string contains a particular token, the token will be replaced by some information from the User Context. If the intent was just to replace the ClientName with the user name, the template is then just “$U”. More details and the .dll file are in the blog post.
- See CTP Jason Samuel How to rewrite the Client Name in Citrix StoreFront 3.9 using StoreFront SDK for detailed info on how to implement this customization in StoreFront 3.8, and how to handle upgrades.
StoreFront Store Customization SDK at Citrix Developer: The Store Customization SDK allows you to apply custom logic to the process of displaying resources to users and to adjust launch parameters. For example, you can use the SDK to control which apps and desktops are displayed to users, to change ICA virtual channel parameters, or to modify access conditions through XenApp and XenDesktop policy selection. Key Customization Points:
- Post-Enumeration
- Post-Launch ICA File
- Post-Session Enumeration
- Access Conditions (pre-launch and pre-enumeration)
- Provider List
- Device information
Citrix Blog Post Adding a Language to StoreFront 3.0: A new language pack is comprised of a culture definition file, a string bundle file and a custom string bundle file. See the Blog Post for more details.
To force StoreFront to only use English, add the following to c:\inetpub\wwwroot\Citrix\StoreWeb\custom\script.js as detailed at Set default language to EN at Citrix Discussions:
CTXS.Environment.getPreferredLanguages = function () { return null; }
To change the StoreFront page title, see Sam Jacobs How to Change the Page Title in Citrix Receiver 3.x at mycugc.org.
Customizations detailed at topic Modify Receiver for Web site at Citrix Discussions:
- Add Featured App Groups to Categories View
- Increase the number of Featured applications beyond the default of 3.
StoreFront SDKs
Most of the StoreFront SDK documentation can be found at https://developer-docs.citrix.com/projects/storefront-sdk/en/latest/
StoreFront Store Customization SDK – Use the Store Customization SDK to apply custom logic to the process of displaying resources to users and to adjust launch parameters. For example, you can use the SDK to control which apps and desktops are displayed to users, to change ICA virtual channel parameters, or to modify access conditions through XenApp and XenDesktop policy selection.
StoreFront Web API – Receiver for Web is a component of Citrix StoreFront that provides access to applications and desktops using a Web browser. It consists of a User Interface tier and a StoreFront Services Web Proxy tier.
StoreFront Authentication SDKs – With StoreFront 3.0, we have introduced a new Unified UI that is delivered from StoreFront to Receiver on all client platforms. Use the Receiver Customization API to brand or customize your end users’ app and desktop selection experience beyond capabilities provided in the StoreFront admin console. Customizations apply to latest Web, Chrome, Windows, Mac and Linux clients, and will be extended to mobile devices in future releases.
StoreFront PowerShell SDK – Citrix StoreFront provides an SDK based on a number of Microsoft Windows PowerShell version 3.0 modules. With this SDK, you can perform the same tasks as you would with the StoreFront MMC console, together with tasks you cannot do with the console alone.
Hi Carl,
I just upgraded from Storefront 2203 LTSR to 2402 CU1 LTSR – I had been using the “Citrix Blog Post StoreFront Message Customization” you described previously, but it looks as if Citrix made some changes to their HTML or CSS?
Previously in the old receiver.html in each StoreWeb folder, the line to change was “”
But now in 2402, that same line in receiver.html is
So it looks like the customTop is now a tag instead of tag – not that this should matter, right?
In any case, I inserted the old customization of just before the close tag, restarted my storefronts, but yet the “customTop” banner line still exists in blue on my receiver page (and I see I can still change the color of it by editing the style.css page) – it’s empty, the contents are gone now.
Long shot, I know – but wondering if any of your storefronts use these edits, just so I can confirm it’s an “everyone” problem and not just a “me” problem.
Whoops, I forgot that WordPress strips out HTML tags if you put them in comments. My post looks kind of weird/empty.
Anyway I figured it out, the issue is that somewhere between 2203 and 2402, the receiver.html file in Storefront changes out the div tags for p tags. And you cannot nest a div tag in a p tag. So, to fix it and get Storefront Message Customization working again, I simply edited the 2402 receiver.html for both my Stores in Storefront to use div tags again instead of p.
The line in question is here. Just replace the p tag opener and closer with div.
div> id=”pluginTop” class=”zero-margin” p> id=”customTop” class=”zero-margin”>/p>/div>
(I removed the leading < from each tag so it wouldn't be removed by WordPress)
Not sure how many other people are still using this (we use them to report when the next downtime will be; I have a powershell script that edits the CSS file that controls the content displayed in the banner automatically to display the date of the 3rd wednesday of the month) but I've found it super useful. I'm glad I found a way to keep it working for 2402 LTSR. Best of luck.
Hi Guys,
I’ve been scratching my head about this for a while, but is there a way to display Delivery Group “Desktops” inside of the Featured App groups? I only use the groups, without any apps outside of it, which is neat. But now the Desktops are not visible without moving to the Apps tab. (Yes, I have the TreatAsApp enable on Desktops)
Got it. Don’t use Category, use Keywords instead.
Hi there,
is it possible to change the view from the tile to a list of the applications in Storefront?
thanks
Hello Carl and Readers
Thanks for all your advice.
I installed the Store Front Version 2311 and activated the new UI.
The category view is something I would like to have, but Users user mostly less than 20 Apps. And in the description/manual from Citrix it says the following:
“If your users have fewer than 20 apps, they’re presented with a simple view that doesn’t have any tabs or categories.”
Does anyone know where I can put that number under 20? I tried to find it on the ISS (Files) and in the Citrix StoreFront Configuration Tool. With no success…
Thanks for your help, ideas!
Simon
Im wondering the same thing. It is possible in Citrix Cloud to customize the Workspace to always display navigation tabs, but how is this done in Storefront?
same problem here.. how to put application in category if user has less than 20 apps. any suggestion would be great help
We use a Hybrid environment with Daas and CVAD 2203 CU3 LTSR on-prem. In our portal we display the user applications by adding the on-prem delivery controllers to the Sites options in Workspace Configuration in DAAS, our FAT and VDI systems are getting the applications through StoreFront url configured in the installed workspace app. Now we would like to remove some applications (not visible) from the startmenu but visible in our portal. How can we achieve this? By creating keywords? Through Netscaler? Any suggestions would be welcome.
Workspace app puts all subscribed (favorited) icons on the user’s Start Menu. You can use group policy or global app configuration service to turn off the start menu for all apps. I don’t think it’s possible to block one app on start menu but allow it in the full apps list.
We use Evidian Token on Thinclients (Igel) to logon to Storefront. Sometimes the thin client freezes when the applications are fetched from Storefront. So we guess the Evidian SSO works cause the Receiver/Workspace implementation on the thin client shows logon success and freezes with a blue workspace style dialogue with the message (translated from German) “Applications being fetched”. Only a manual logon with username/password resolves the issue even after restart – every further Evidian auth would cause the issue. We guess there must be some token issue on Storefront level. Is there a tweak to handle things like SSO tokens transmitted from the client to Storefront. That’s the reason I ask this question in this threat.
Hi Carl, As ever my goto whne i have a weird issue and Mr Google comes up blank! ;).. For some time we have been running Storefron 1912 Cu3 LTSR. We have one published application whereby the developers have created thier own code hosted on external sharepoint site that will open the required published application and pass it parameters, their generated URLs look something like this:
https://ourinternalcitrix.com/Citrix/blahWeb/?LaunchApp=BlahApp&AppCommandLine=blahparameter+12345|modelkey+Blah|readonly+true
Like i say – this has worked fine for about a year. we just upgraded to SF 2203 Cu3 and it no longer works. I have had to roll back to 1912 CU3.
We have an open ticket with Citrix but to be honest i am not holding out much hope as they said before it was unsupported usage.
So, just hoping you might have an idea we can try to get past this and allow us to run a more current version of SF :). I’m thinking of trying 1912 Cu7 ,instead of 2203. But that would only be a stop gap..
Thanks
Which of these APIs? https://developer.cloud.com/citrixworkspace/citrix-storefront
Maybe your command line needs URL encoding.
Unfortunately our SF was setup by someone who has since left us and left no notes on the configuration! Looking in the custom.js file i can see this which seems to be relevant:
var getUrlParameter = function getUrlParameter(sParam) {
var sPageURL = decodeURIComponent(window.location.search.substring(1)),
sURLVariables = sPageURL.split(‘&’),
sParameterName,
i;
for (i = 0; i < sURLVariables.length; i++) {
sParameterName = sURLVariables[i].split('=');
if (sParameterName[0] === sParam) {
return sParameterName[1] === undefined ? true : sParameterName[1];
}
}
};
var LaunchApp = getUrlParameter('LaunchApp');
var AppCommandLine = getUrlParameter('AppCommandLine');
CTXS.Extensions.noteApp = function (app) {
if (LaunchApp != null)
{
if(LaunchApp == app.name)
{
CTXS.ExtensionAPI.launch(app);
}
}
if (app.encodedName.indexOf('ourcitrix') != -1) {
app.iconid = '0';
app.iconurl = './custom/Images/desktop.png';
}
};
CTXS.Extensions.doLaunch = function(app, action) {
if (AppCommandLine != null)
{
$.ajaxSetup({
headers : {
'AppCommandLine': AppCommandLine
}
});
action();
delete $.ajaxSettings.headers["AppCommandLine"]; //Remove header
}
else
{
action();
}
};
I am trying to work out if any customisations were made in the bin folder that, as i understand it, would not persist through an upgrade. but that is proving difficult to find 🙁
Hi… good news! I have managed to resolve this! it turns out we had an undocumented customization in Storefront. i was able to retrieve an old customized copy of storefrontcustomization_launch.dll and apply that 🙂
Thanks
Hi all,
is there a way to only override the client names for a specific published app and not for the entire store?
hi Carl
I wanted to ask
I want to do some things in the new version of the StoreFront that I can’t apply
1. Set as default that the first page to open is the page containing the folders inside the applications tab
2. Under the apps tab there are 2 pages 1. ALL and the other is folders I want it to say ALL apps instead
3. When defining folders, apply that the number of icons found in the folder that you provide will appear inside the icon of the folder
I would appreciate your help on this matter
Hi Carl,
Do you know if it is possible to change the size of the published app name on Citrix Workspace app ? it is Citrix Daas.
We have many apps and some of them are truncate so we don’t see the full name.
Is it possible to change the size or do not truncate the name too long ?
Thanks
is there any way to get old UI like we had in citrix 7.15, our customer want the old folder look in categories
Not that I know of.
Hi Carl, we have to restrict Admin group to login to Storefront site. we created one AD group that is used in Netscaler , how can we do same for internal site i.e., Storrfront url
I don’t think that’s possible.
Instead, in PowerShell, for your Delivery Groups, you can configure BrokerAccessPolicyRule to prevent a group from seeing it. There’s an option forExcludedUsers. https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/Broker/Set-BrokerAccessPolicyRule/
Here’s a quick bit of PowerShell to disable NetBIOS rather than clicking through the network connections menus – https://social.technet.microsoft.com/wiki/contents/articles/53228.powershell-disable-netbios-on-your-network-adapters.aspx
upgraded to SF 1912 cu5, and the auto relogon feature no longer works, checked the script.js file and it still has the CTXS.allowReloginWithoutBrowserClose = true set in it. My users have to authenticate back through azure each time the storefront times out. thoughts?
No need to set an Application settings variable.
You can retrieve the server name with this line in the function of the aspx file :
return HttpContext.Current.Server.MachineName;
Hello carl, we have a link on the storefront page to microsoft password reset. Is it possible to show a notification to the user if they typed the wrong password for x times?
Thanks
Hi Carl I’m already on 1to 912 cu1 want to upgrade 1912 cu3 is it as straight forward as running the iso on each server. 2 x Storefront, 2 Delivery Controller, 200 VDA’s, 1 x Workspace Enviroment Management server and 1 x Director server.
Yes. See https://docs.citrix.com/en-us/citrix-virtual-apps-desktops/upgrade-migrate/upgrade.html. See https://www.carlstalhood.com/delivery-controller-1912-ltsr-and-licensing/#upgrade
Hi Carl. Do you know if there is a way to reduce the rights the NT Service\CitrixClusterService and CitrixConfigurationReplication service require, so that they do not need to be in the local administrators group?
Hi Carl, the background color of the tabs (APPS, Desktops, Favorites) is an lighter purple color in StoreFront 1912 LTSR. We use different colors (dark green) and in our environment the tabs have an ugly green color. Is there any option to change the background color of the tabs?
We are having this same issue. I can’t quite figure out what CSS is needed to override that default purple color on the header in CU3, might be a bug/issue
By experimenting I found that in 1912CU2 this is modified with “.theme-highlight-color”.
This setting not only changes the tabs background color, but also the color of the words Favorites, etc.
Found the file you need here as we are seeing this same issue –
C:\inetpub\wwwroot\Citrix\TestInternalStoreWeb\receiver\css\ctxs.large-ui.min_
you want to look for the “.theme-header-selection-color.selected” entry. I’m going to reach out to our TAM and see if this is a bug or a supported way to fix it.
Hey Carl, is there a way to change the displayed User’s Name (Last name, First name) to (Last initial, First Name) or just (First name)?
In earlier version of Storefront, the category view only showed applications that were not inside a folder/category. This really helped to clean over-crowding of apps displayed. That doesn’t seem to be the case in 1912. Is there a way to recreate this again?
Hi Carl,
I’m running 1912CU2 and the customers wants to remove the Account Settings and About options from the drop down and only leave Logout on the StoreFront page. Where would I change that?
Good morning Carl!
Installed StoreFront 1912 CU2. The “Desktop” tab is showing all icon’s names as truncated. Is there a trick get the icon names to be fully displayed ?
Thanks in advance!
We implemented the “scrolling message to the top of the screen” in our StoreFront before (SF3.12) and it worked fine. After upgrading to SF1912 the bar at the top of the screen is still there, but no scrolling message anymore.
Does anyone know how to fix this?
TIA
HI,Carl,how to config default domain,
Users do not need to enter a domain name
See https://www.carlstalhood.com/storefront-cr-basic-configuration/#authconfig
Hi Carl, can we prevent users from using hot key shift + f2? (store method)
See https://support.citrix.com/article/CTX140219
Hi Carl,
we encounter the error “Your Logon has expired. Please logon again to continue”. This only happens to users which are limited and have enabled “Logon to following Computers” in their AD account. Users who have now logon limitation can access their apps without All users are using the Receiver for Web to login in the store.Storefront Servers are loadbalanced with Netscaler.
I tried to add the Infrastructure Servers from our on-prem deployment (Storefront, delivery controllers, lic etc) in the permitted Computers but had no luck. Do you have a hint for me what i can do further?
I have encountered this and it was because of XML service was unable to validate the identity of the user since the DDC lost its trust from Domain. I wish there is any automated tool to monitor this scenario.
Hello Carl,
I have a question about autoreconnect with StoreFront. Autoconnrect to disconnected sessions only works when we sign-in to Citrix Workspace App only. Disconnected apps are not reconnected when we logon via ADC Storefront logon web page. Is this expected? Also, the reconnect button doesn’t exist on the page as the Storefront setting check box listed.
We used to have that in Web Interface. Thank you as always for your insights.
Hi Carl,
we are migrating from 7.15 LTSR to 1912 LTSR. Much of the customizations i can transfer to 1912 but i can’t change the background of apps/desktops anymore. The .storeViewSection isn’t working anymore. Do you have any idea how to solve this?
Same issue here. Only have a white background behind apps with shading in header/footer.
Hello Carl,
Having a difficult time finding any recent article related to displaying server name footer on StoreFront homepage. I notice in your tweaks article above, you have details on IP address on homepage and once you authenticate StoreFront it will display the StoreFront server. I tried the following article https://www.citrixguru.com/2016/02/27/display-server-name-with-citrix-storefront-3/, but my StoreFront servers have been upgraded to 1912, and this article was put out 4 years ago. Appreciate any suggestions if they are any?
Do you mean something like this? https://www.citrix.com/blogs/2018/01/03/how-to-add-a-server-identifier-to-the-storefront-page-footer/
Hi Carl, I noticed when we enable SmartAccess Mode on the ADC, we no longer get the server identifier to display. Looking at developer tools, the aspx never runs. I’m guessing it’s a different landing page when SmartAccess mode is enabled, then when it’s basic mode and displaying the storefront page. Any ideas on how to implement a StoreFront identifier when running SmartAccess mode? Thx!
Hi Carl, After upgraded to 1912 , Apps – Catagories – Folder view is completely change and it is more confusing. is it possible to get same folder structure like old version.
Carl, dont see new sdk for 1912. Is it possible to rename clientname with out 1912 sdk?
Hi Carl, figured it couldn’t hurt to ask here…we’re moving from StoreFront 3.6 to 1909, and had some custom code working in an iFrame. We can get the frame to load in 1909 (via X-Frame options) but get a bunch of .js errors. Any ideas?
Any luck with this Noah? We just upgraded from 3.15 to 1912 and our custom frame is no longer working either.
Is there a way to create a click-through disclaimer when launching specific applications in Citrix? I know I can do it post logon to storefront, but I need to do it for certain apps only.
You mean the Windows logon disclaimer? If you have separate VDAs for these apps, then put them in an OU and put a GPO on the OU that enables the Windows logon security message.
No more like an access database residing on a share. Just the database is published through storefront
Hi Carl,
We have a plan with MFA. Can you please help me out.
We are planing to migrate MFA from one Swivel vendor to Azure MFA.
We have created new gateway all done. Created new store in Storefront.
We are able to login with the Azure MFA but the published apps are not visible we are getting below error.
“Cannot Complete Your Request”
“Your Login Has expire. Please log on again to continue”
Thanks,
Azifkhan.N
What do you see in StoreFront Server > Event Viewer > Applications and Services > Citrix Delivery Services?
Below is the error im getting carl.
=================================================
The AG Web Service at: https://XXXX/CitrixAuthService/AuthService.asmx failed with the following error. This endpoint will be ignored until: 4/15/2020 11:55:39 AM
Citrix.DeliveryServices.Authentication.CitrixAGBasic.Exceptions.AGCommunicationException, Citrix.DeliveryServices.Authentication.CitrixAGBasic, Version=3.12.0.0, Culture=neutral, PublicKeyToken=null
A communication error occurred while attempting to contact the NetScaler Gateway authentication service at https://XXXXX/CitrixAuthService/AuthService.asmx. Check that the authentication service is running.
at Citrix.DeliveryServices.Authentication.CitrixAGBasic.Client.AGClient.GetAccessInfo(String sessionId, String username, String domain)
at Citrix.DeliveryServices.Authentication.CitrixAGBasic.Client.CitrixAGBasicWebService.GetAccessInfo(String sessionId, String username, String domain)
System.Net.WebException, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Unable to connect to the remote server
at System.Net.HttpWebRequest.GetRequestStream(TransportContext& context)
at System.Net.HttpWebRequest.GetRequestStream()
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at Citrix.DeliveryServices.Authentication.CitrixAGBasic.AGAuthService.AuthenticationServiceSoap.GetAccessInformation(String sessionId, String username, String domain)
at Citrix.DeliveryServices.Authentication.CitrixAGBasic.Client.AGClient.GetAccessInfo(String sessionId, String username, String domain)
System.Net.Sockets.SocketException, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 10.98.80.95:443
at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
========================================
This suggests that StoreFront cannot connect to your Callback URL. Copy the Callback URL. On StoreFront server, open a browser, paste in the CallBack URL, and make sure it connects without any certificate errors.
Hi Carl,
If i run my call back url “https://fjernaksessuat2.xx.xx” getting same error after i login.
“Cannot Complete Your Request”
“Your Login Has expire. Please log on again to continue”
Thanks,
Azifkhan.N
Do you need the callback URL? If you remove the callback URL, does it work?
On StoreFront server, is the Credential Wallet service running?
Hi Carl,
I checked for the the certificate are okay valid ones.
Thaks,
Azifkhan.N
Have not see anything. We are going to set up a testing desktop that has Work Space 1912 instead of Receiver 4.9.5000. We will see how that acts and see if there are any errors in the IIS Logs
We have two new XA 7.15.5000 Sites configured in separate DCs. One is DC1 with 3 StoreFront servers load balanced. The Second is in DC2 with 3 StoreFront servers load balanced. So each StoreFront DC group is behind a VIP load balanced with an F5 appliance at each site. We have a GSLB VIP configured with the F5 where it load balances each VIP. We configured each StoreFront server identical using the same Base URL, Same SRID and Same “Farm” name with the controllers to their respected DC. This allows us to have both Sites configured with the same Application and will be delivered from either site and works well. We are testing Receiver 4.9.5000 and when we noticed a very long lag in Receiver (Not using Storefront for Web) on a Windows 10 Desktop when we turn down one of the sites. We keep getting an error “Cannot start app”. If we remove the Store from Receiver and add it back in, then it works.. Or if we log out of Receiver and launch it again, it works.. We do not see this behavior in Receiver for Web. We are thinking of testing this configuration out with WorkSpace 1912 to see if it seems to handle these scenarios better. Can you offer any recommendations we may need to set on the Desktop side or in the GSLB config or possibly on the StoreFront side?
Any errors in StoreFront Server > Event Viewer > Applications and Services > Citrix Delivery Services?
Hi Carl,
I have deployed Citrix VAD 1912.. and currently configured to auto launch desktop via IE11 in kiosk mode. Just wanted to check whether I can bypass the Citrix workspace dashboard which the user can see prior launching the Desktop. the dashboard where the users can see all published applications and desktops, which I want to hide during the Autolaunch.
When users start their desktop the autologin takes place, and directly users land to NetScaler login page, which configured by bypass login. Prior launching the desktop the users can see the published resources. That’s the screen I want to hide or disable.
John Billekens article for hiding domain/user text field (placeholder) seems to only apply to IE and not Chrome. Anyone have any idea how to get it to work in Chroem?
Carl – and thoughts how to modify the “Welcome, LDAP Display name” on the left side once a user signs into storefront?
Do we have the option to customize the storefront page folder to look with alphabetical to customize one?
Great article Carl!
One thing that we have had lot of problem when upgrading our environment to 1909 is our PDAs (Android v6) with workspace app (19.09). Before we could save our password in the receiver app which what I think was possible thanks to the PNAgent, am I wrong? But nowadays when the workspace app doesn’t have the PNAgent how are we suppose to save the password? Is this not possible anymore? We don’t go through NetScaler. Otherwise how can adjust the session timeout for at least 72h for our PDAs? I have not find a solution for this.
Thank you
Docs says “You cannot store the password on StoreFront direct connections.” https://docs.citrix.com/en-us/citrix-workspace-app-for-android/authenticate.html
Carl your a star.. i have a question.. if running published desktop RDSH.. go to receiver for web (storefront).. i see no connect / disconnect buttons.. if i VMWare console into same server, same user it works fine.. storefront added to secure site, workspace control is set up correctly.. only happens within published desktop.
I think StoreFront detects that you’re in a Citrix session and doesn’t offer you those options.
Hi Carl,
When user logs in to storefront a different display name is shown (belongs to a different user from the same domain). This is randomly happening for more than 10+ users.
Tried http://support.citrix.com/article/CTX139870, but issue persists.
We are running SF 18.11
Any suggestions ?
Do you have multiple domains?
Are users logging on using their userPrincipalName?