详细流程:

1. 客户端上的receiver负责解析ICA文件,并根据ICA文件的内容发起连接请求。若是外网访问,则ICA文件中记录的是NetScaler的AG FQDN信息,连接请求发至NetScaler的AG,流程按顺序往下走;若是内网访问,则ICA文件中记录的是虚拟机的IP信息,客户端直连虚拟机。

2. 登录虚拟机:虚拟机收到连接请求后,需要执行三个步骤:Logon Ticket验证,License验证,登录。

b) DDC接收到调用请求后,向STA服务校验Logon Ticket是否有效。由于金航的项目是智能卡传递,所以向STA服务校验是不成功的,校验无效,则向AD-LADAP进行再次的身份验证,将换回来的域帐号信息发回给DDC。

b) VDA收到域帐号信息后,XP下是通过Citrix的picagina.dll负责将域帐号信息贴在登录窗口,以完成登录,WIN7下是通过Windows的Credential Provider API完成的。

3、最后,VDA向DDC更新其状态为“使用中”,并更新数据库,至此,登录流程结束。

虚拟应用架构流程图

1、 用户的虚拟桌面里面右键Citrix联机插件或者在开始所有程序那里点开所需要访问的应用程序图标,Citrix联机插件接受到用户的指令后,通过HTTPS协议走SSL加密的通道和443端口将用户证书传递到Citrix Web Intece站点;

【技术细节:虚拟桌面里会安装Client证书,Citrix Web Intece站点会安装一个Server证书,在用户发起请求的时候,Client证书与Server证书会先确认对方是它相连接的,而不是第三方冒充的。相互确认之后,Client证书与Server证书会交换session key,用于连接后数据的传输加密和hash校验。Client证书与Server证书加密(内容加密)之后,再走SSL加密(通道加密)】

2、 CitrixWeb Intece将用户身份证书通过XML Broker TCP 80和443端口传输到XenApp服务器中IMA服务,IMA服务将用户身份证书传递给本地的Lsass.exe进程;

3、 XenApp服务器中Lsass.exe将用户验证信息传递给域进行身份验证;

4、 域控传给LDAP服务器;

5、 LDAP返回结果;

6、 AD将身份验证结果返回给XenApp服务器的Lsass.exe,然后传递给IMA服务;

7、 XenApp去数据库枚举应用列表;

8、 数据库返回应用列表;

9、 根据结果信息查看应用在那个FARM;

10、 成员服务器返回结果;

11、 XenApp服务器中的IMA服务将身份验证结果及XenApp发布应用列表和策略通过XML Broker返回给Web intece站点服务器;

12、 WebIntece站点将身份验证结果及XenApp发布应用列表和策略返回给客户端(citrix Receiver或浏览器)指定客户端需要访问的XenApp服务器,并传输ICA文件到客户端;

13、 客户端通过Receiver或者online plug-in打开ICA文件,访问发布的应用程序(citrix Receiver-Web Intece-XenApp Farm);

14、 XenApp服务器访问XenApp服务器ZDC寻求验证信息;

15、 XenAppZDC发送请求到licensing服务器上看是否有空余的授权;

16、 Licensing服务器返回可用License查询结果给ZDC;

17、 XenAppZDC去RDS服务器产看是否有终端授权许可;

18、 RDS返回许可;

19、 ZDC返回信息给XenApp成员服务器;

20、 XenApp与客户端建立会话,并启动应用程序;

附图一张:

Citrix XenApp登录服务器过程详解的更多相关文章

  1. Python使用socketServer包搭建简易服务器过程详解

    官方提供了socketserver包去方便我们快速的搭建一个服务器框架. 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的 ...

  2. 使用Navicat或者其他数据库工具连接阿里云EDS(数据库服务器)实例过程详解

    使用Navicat或者其他数据库工具连接阿里云EDS(数据库服务器)实例过程详解 背景:这几天从阿里云上面购买了云服务器,最垃圾的那种,还送oss和EDS数据库服务器,只不过EDS数据库服务器只有一个 ...

  3. 理论经典:TCP协议的3次握手与4次挥手过程详解

    1.前言 尽管TCP和UDP都使用相同的网络层(IP),TCP却向应用层提供与UDP完全不同的服务.TCP提供一种面向连接的.可靠的字节流服务. 面向连接意味着两个使用TCP的应用(通常是一个客户和一 ...

  4. hadoop1.2.1+zk-3.4.5+hbase-0.94.1集群安装过程详解

    hadoop1.2.1+zk-3.4.5+hbase-0.94.1集群安装过程详解 一,环境: 1,主机规划: 集群中包括3个节点:hadoop01为Master,其余为Salve,节点之间局域网连接 ...

  5. BabyLinux制作过程详解

    转:http://www.360doc.com/content/05/0915/14/1429_12641.shtml BabyLinux制作过程详解 作者:GuCuiwen email:win2li ...

  6. (转)Linux 开机引导和启动过程详解

    Linux 开机引导和启动过程详解 编译自:https://opensource.com/article/17/2/linux-boot-and-startup作者: David Both 原创:LC ...

  7. MySQL对数据库数据进行复制的基本过程详解

    MySQL对数据库数据进行复制的基本过程详解 这篇文章主要介绍了MySQL对数据库数据进行复制的基本过程,解读了Slave的一些相关配置,需要的朋友可以参考下 复制 复制是从一个MySQL服务器(ma ...

  8. sql server 2008 数据库管理系统使用SQL语句创建登录用户步骤详解

    介绍了sql server 2008 数据库管理系统使用SQL语句创建登录用户步骤详解 --服务器角色: --固定服务器角色具有一组固定的权限,并且适用于整个服务器范围. 它们专门用于管理 SQL S ...

  9. [转帖]SSH远程登录配置文件sshd_config详解

    SSH远程登录配置文件sshd_config详解 2016年06月02日 17:42:25 Field_Yang 阅读数 61386   版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权 ...

随机推荐

  1. Msfvenom学习总结

    1.    –p (- -payload-options) 添加载荷payload. 载荷这个东西比较多,这个软件就是根据对应的载荷payload生成对应平台下的后门,所以只有选对payload,再填 ...

  2. elasticsearch 的查询 /_nodes/stats 各字段意思

    /_nodes/stats 字段意思   “”   1 {  2  "_nodes": {3 "total": 1, "successful" ...

  3. ReactiveCocoa进阶

    1.ReactiveCocoa常见操作方法介绍. 1.1 ReactiveCocoa操作须知 所有的信号(RACSignal)都可以进行操作处理,因为所有操作方法都定义在RACStream.h中,而R ...

  4. 网络编程 生产者消费者模型 GiL

    守护进程: 注意事项: 1.必须在p.start()前 2.守护进程不能开子进程 3.如果主进程的运行时间快于子进程,那么就只有主进程的结果,没有守护进程的结果,因为守护进程没有进行完.反之会得到两个 ...

  5. c++ 11 移动语义

    C++ 已经拥有了拷贝构造函数, 和赋值函数,它们主要定位为浅和深度拷贝, 新增加一个移动构造函数,主要避免拷贝构造. 在定义了移动构造函数的情况下,在实参(argument)是一个右值(rvalue ...

  6. jQuery-2.DOM---jQuery遍历

    jQuery遍历之children()方法 jQuery是一个合集对象,如果想快速查找合集里面的第一级子元素,此时可以用children()方法.这里需要注意:.children(selector) ...

  7. Win10+Ubuntu双系统删除Ubuntu方法

    前情提要 Win10下试了许多种方法,什么MbrFix.EasyBCD.亦或是Boot Option.都不行.前两者不行,操作之后重启无法直接进入Windows,后者也不行,找不到所谓的Delete ...

  8. Beanshell断言

    Beanshell断言示例一:通过从数据库查询结果集,和从接口返回中解析json格式的返回内容,比较两者来验证sample请求是否成功 1>先通过JDBC PreProcessor把测试计划中所 ...

  9. MyCat配置详解

    MyCAT 配置解析 server.xml Mycat的配置文件,设置账号.参数等schema.xml Mycat对应的物理数据库和数据库表的配置rule.xml Mycat分片(分库分表)规则 一 ...

  10. install svn server in Ubuntu

    1. #安装服务 apt-get install subversionapt-get install libapache2-svnapt-get install apache2apt-get inst ...