Yes, what you have is mostly correct; see minor comments below (otherwise, looks good).
1. SSO requires "core" Web Rewrite using the Content Intermediation Engine
a. Uses a Web Resource profile.
>>>You do not need to use a resource profile; you can create the SSO policy without it.
b. Uses a "special" Web Resource profile that uses the Citrix Transparent Service Proxy (CTS) that supports "Form-Post", also known as "Remote SSO".
Note: CTS is an Active-X control, so ONLY SUPPORTS IE. All other browsers require WSAM, JSAM, Pulse, or NC.
>>>The Citrix profile does come with predefined elements; however, you can configure it manually if you rather at Users>Resource Policies>Web>SSO>form POST
c. Website needs to send a 401 Authentication Required to trigger Kerberos, NTLM, or Basic Auth.
1. Kerberos and NTLM requires Windows server with Integrate Authentication enabled.
d. Website needs a "Form" tag to do a Remote SSO.
e. Not sure about the Java Citrix Proxy or JSAM. Haven't tested.
>>>JSAM does not have SSO as an option. The Java ICA client should be authenticated at the web page
f. Haven't spent much time on MS Terminals Services. Is there a proxy similar to CTS, and does it operate similarly?
>>>No, it is a different proxy and has a different set of capabilities. It does accept SSO credentials. Some of what you do depends on if you are using HTML5 or the traditional client.
2. Pass Through Proxy does not support SSO.
>>>It should work; however, there may be complications when doing hostname-based passthrough proxy to try and send the credential to the correct location. Port-based is a better option if SSO is needed
a. The value of PTP is no special client needed.
3. WSAM does not support SSO
a. This works very well in 8.2 with Chrome and FF using new Pulse App Loader (PAL)
4. Pulse and Network Connect do not support SSO.
5. SAML and Cert Authentication complicate SSO since no password is captured at PCS Authentication.
a. Kerberos Constrained Delegation SSO can help here to get a ticket for the user by using a service account.
b. Can also prompt for a password by doing a secondary login using LDAP or AD and using a password manager like LastPass.
1. Pass the username from the SAML NameID, or CN from Cert. Be sure to send the proper AD username in the attribute.