Good ol' ICA File
Update 7-26-16: I created an additional PowerShell script that can utilize explict authentication vs anonymous only. Available on Github.
TL;DR: Click here to go to GitHub to download.
Limited Client Options
I was recently placed in a predicament where I needed XenApp application access that was currently done by an ICA file, but now needed to access a new XenDesktop 7.6 environment. The machines were running Windows XP, IE 8 installed and Citrix Receiver 3.4 web installed. Eventually the machines will be upgraded with Windows 7 and a recent version of Citrix Receiver where many more options exist but I needed something immediate. Researching solutions I configured both an anonymous access delivery group in XenDesktop, an unauthenticated store in Storefront and grabbed a "Web Shortcut" from Storefront.
And when I attempted to launch the link using IE 8 it prompted me with the notification below. While the application would finally launch if I selected no to closing the tab, I didn't feel this was a very elegant solution and would confuse users. I wanted to see if there were any other options while the machines got upgraded.
Can I generate an ICA file?
To see if it was even possible to generate an ICA file while not accessing Storefront or Receiver directly I did some searching and found this blog as a great starting point. I ended up with a PowerShell script that can generate and launch an ICA file right from PowerShell The script only works with version 3 of PowerShell which didn't help the Windows XP situation, but proved it was possible to create an ICA file via the API! The script uses an unauthenticated store from Storefront, an anonymous XepApp application and then launches the generated ICA file.
What about XP?
The function is called if a user 'clicks' a button in the test.html but can be called in any fashion.
<button onclick="starticaurl('https://storefront.mydomain.local/Citrix/unauthWeb/', 'Notepad++')">Launch App</button>
- For PowerShell must have v3 installed
Unauthenticated StoreFront Store created
Anonymous Delivery Group created