Web Interface SDK 最新的版本是5.4,可以在这里下载:

http://www.citrix.com/static/cdn/archivedsdks/webinterfacesdk/5.4/WI5_4_0_SDK.zip

 

由于客户常常希望将XenApp/XenDesktop的Web访问站点和自己的门户站点集成,因此会使用WI的SDK在自己的门户站点上进行开发。

而很多时候,这些开发出来的站点位于企业内网,客户端通过门户站点访问XenApp/XenDesktop的时候,网络上不会受到什么限制和影响。

一旦用户需要穿过防火墙,通常都建议使用NetScaler作为发布网关。我们知道登录验证可以放在NetScaler上,也可以放在WI上。如果是自己开发的门户,当然不会想放在NetScaler里面。所以大多会选择使用WI的SDK进行登录。而为了让NetScaler网关外部的用户顺利联系内部的私有地址以及1494/2598端口,就需要利用STA通过票据来存取有关的信息。

 

虽然写着原创,这部分内容来自于Davy Huang。

有关使用WI SDK的STA的信息这篇文章说的很清楚http://stackoverflow.com/questions/603682/how-do-i-code-citrix-web-sites-to-use-a-secure-gateway-csg

ConnectionRoutingPolicy policy = config.getDMZRoutingPolicy();

policy.getRules().clear();

//Set the Secure Ticketing Authorities (STAs).

STAGroup STAgr = new STAGroup();

STAgr.addSTAURL(@"http://CitrixAppServerURL/scripts/ctxsta.dll");

//creat Secure Gateway conenction

SGConnectionRoute SGRoute = new SGConnectionRoute(@"https://CSGURL");

SGRoute.setUseSessionReliability(false);

SGRoute.setGatewayPort(80);

SGRoute.setTicketAuthorities(STAgr);

// add the SGRoute to the policy

policy.setDefault(SGRoute);

在SDK文档中能够找到有关的方法和Class的描述。

clip_image001

clip_image002