CN102025748A - 获取Kerberos认证方式的用户名的方法、装置和系统 - Google Patents
获取Kerberos认证方式的用户名的方法、装置和系统 Download PDFInfo
- Publication number
- CN102025748A CN102025748A CN2011100004704A CN201110000470A CN102025748A CN 102025748 A CN102025748 A CN 102025748A CN 2011100004704 A CN2011100004704 A CN 2011100004704A CN 201110000470 A CN201110000470 A CN 201110000470A CN 102025748 A CN102025748 A CN 102025748A
- Authority
- CN
- China
- Prior art keywords
- packet
- authentication mode
- client
- user name
- kerberos
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及获取Kerberos认证方式的用户名的方法、装置和系统,包括:设置代理服务器为集成认证方式;接收代理服务器为响应客户端的访问请求所发送的回复数据包;判断回复数据包是否为预设类型数据包且判断其中是否包含预设字符串;依据判断结果配置所述回复数据包中包含的预设字符串的首字符为预设字符;重新计算TCP校验和并予以替换;发送经配置和重新计算后的回复数据包至客户端,使得客户端将其与代理服务器的认证方式设置为NTLM认证方式;接收客户端发送的认证数据包并从中提取用户名。本发明通过配置或修改数据包中的预设字符串中的预设字符,使得客户端的认证方式设置为NTML认证方式,从而获取到客户端对应的用户名。
Description
技术领域
本发明涉及代理环境下的身份认证协议,更具体地说,涉及一种获取Kerberos认证方式的用户名的方法、装置和系统。
背景技术
在网络环境中,主要包括两种认证协议:Kerberos协议、和NTLM(WindowsNT LAN Manager Challenge/Response)协议。NTLM协议是用在包括Windows操作系统的网络中的一种认证协议。下面详细描述NTLM非交互式的认证过程:
1、客户端首先在本地加密当前用户的密码成为密码散列;
2、客户端向代理服务器发送自己的用户名,这个用户名是没有经过加密的,明文直接传输;
3、代理服务器产生一个16位的随机数字发送给客户端,作为一个challenge(挑战);
4、客户端再用加密后的密码散列来加密该challenge,然后把这个返回给代理服务器。作为response(响应);
5、代理服务器把用户名、给客户端的challenge、客户端返回的response这三项数据发送给域控制器;
6、域控制器使用用户名在SAM(Security Account Manager)数据库中找到这个用户的密码散列,然后使用这个密码散列来加密challenge;
7、域控制器比较两次加密的challenge,如果一样,那么认证成功。
Kerberos协议基于私钥加密算法,需要可信任的第三方作为认证服务器,主要用于计算机网络的身份鉴别,用户只需输入一次身份验证信息就可以凭借此验证获得的票据访问多个服务,即SSO(Single Sign On)。由于在每个客户端和服务器之间建立了共享密钥,使得该协议具有相当的安全性。
Kerberos协议流程如图1所示,详细描述如下:
(1)客户端从KDC请求TGT
在用户试图通过提供用户凭据登录到客户端时,如果已启用了Kerberos身份认证协议,则客户端计算机上的Kerberos服务向KDC(Key DistributionCenter,密钥分发中心)发送一个Kerberos身份认证服务请求,以期获得TGT(Ticket-Granting Ticket,票证许可票证)。
(2)KDC发送加密的TGT和登录会话密钥
KDC为用户获取长效密钥(即密码),然后解密随Kerberos身份认证请求一起传送的时间戳。如果该时间戳有效,则用户是有效用户。KDC身份认证服务创建一个登录会话密钥,并使用用户的长效密钥对该登录会话密钥进行加密。然后,KDC身份认证服务再创建一个TGT,它包括用户信息和登录会话密钥。最后,KDC身份认证服务使用长效密钥加密TGT,并将加密的登录会话密钥和加密的TGT传递给客户端。
(3)客户端向KDC TGS请求ST
客户端使用其长效密钥(即密码)解密登录会话密钥,并在本地缓存。同时,客户端还将加密的TGT存储在缓存中。这时还不能访问网络服务,因为它仅获得了TGT和登录会话密钥,仅完成了网络登录的过程,还没有获得访问相应网络服务器所需的服务票证(Service Ticket,ST)。客户端向KDC票证许可服务(Ticket-Granting Service,TGS)发送一个服务票证请求(ST是由TGS颁发的)。
(4)TGS发送加密的服务会话密钥和ST
KDC使用自己创建的登录会话密钥解密认证符(通常是时间戳)。如果验证者消息成功解密,则TGS从TGT提取用户信息,并使用用户信息创建一个用于访问对应服务的服务会话密钥。使用该用户的登录会话密钥对该服务会话密钥的一个副本进行加密,创建一个具有服务会话密钥和用户信息的服务票证(ST),然后使用该服务的长效密钥(密码)对该服务票证进行加密。并将加密的服务会话密钥和服务票证返回给客户端。
(5)客户端发送访问网络服务请求
客户端访问服务时,向代理服务器发送一个请求。该请求包含身份认证消息(时间戳),并用服务会话密钥和服务票证进行加密。
(6)服务器与客户端进行相互验证
Kerberos服务器使用服务会话密钥和服务票证解密认证符,并计算时间戳。然后与认证符中的时间戳进行比较,如果误差在允许的范围内(通常为5分钟),则通过测试,服务器使用服务会话密钥对认证符(时间戳)进行加密,然后将认证符传回到客户端。客户端用服务会话密钥解密时间戳,如果该时间戳与原始时间戳相同,则该服务是真正的,客户端继续连接。这是一个双向、相互的身份认证过程。
在常见的网络应用场景中,通常需要在核心交换机与代理服务器之间部署流量分析或审计设备,来获取和分析网络流量的用户信息。然而当代理服务器的用户采用了Kerberos认证方式的情况下,传送的数据包中不存在用户名信息,也就无法获取用户名以便对用户进行实名制分析。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述无法获取用户名以便对用户进行实名制分析的缺陷,提供一种获取Kerberos认证方式的用户名的方法。
针对上述缺陷,还提供一种获取Kerberos认证方式的用户名的装置。
针对上述缺陷,还提供一种获取Kerberos认证方式的用户名的系统。
本发明解决其技术问题所采用的技术方案是:构造一种获取Kerberos认证方式的用户名的方法,包括:
设置代理服务器的用户认证方式为集成认证方式;
接收所述代理服务器为响应客户端的访问请求所发送的回复数据包;
判断所述回复数据包是否为预设类型数据包,且判断所述回复数据包中是否包含预设字符串;
依据判断结果配置所述回复数据包中包含的所述预设字符串的首字符为预设字符;
重新计算经配置后的所述回复数据包的TCP校验和并予以替换;
发送经配置和重新计算后的所述回复数据包至客户端,使得所述客户端将其与代理服务器的认证方式设置为NTLM认证方式;
接收所述客户端发送的认证数据包并从中提取所述客户端的用户名。
在本发明所述的获取Kerberos认证方式的用户名的方法中,所述集成认证方式包括Kerberos认证方式、NTLM认证方式和Negotiate认证方式。
在本发明所述的获取Kerberos认证方式的用户名的方法中,所述预设类型数据包包括应用层的首12字节为“HTTP/1.1 407”的数据包和应用层的首12字节为“HTTP/1.1 401”的数据包;
其中,判断所述回复数据包是否为预设类型数据包具体包括:判断所述数据包是否为应用层的首12字节为“HTTP/1.1 407”或“HTTP/1.1 401”的数据包。
在本发明所述的获取Kerberos认证方式的用户名的方法中,所述预设字符串包括“Kerberos\r\n”和“Negotiate\r\n”;
其中,判断所述回复数据包中是否包含预设字符串具体包括:判断所述回复数据包中是否包含“Kerberos\r\n”或“Negotiate\r\n”。
在本发明所述的获取Kerberos认证方式的用户名的方法中,其中,依据判断结果配置所述回复数据包中包含的所述预设字符串的首字符为预设字符具体包括:
如果所述回复数据包为应用层的首12字节为“HTTP/1.1 407”或“HTTP/1.1 401”的数据包且所述回复数据包中包含“Kerberos\r\n”或“Negotiate\r\n”,则配置所述回复数据包中包含的“Kerberos\r\n”和“Negotiate\r\n”的首字符为预设字符。
在本发明所述的获取Kerberos认证方式的用户名的方法中,所述预设字符为“0”字符。
本发明还提供一种获取Kerberos认证方式的用户名的装置,包括:
设置单元,用于设置代理服务器的用户认证方式为集成认证方式;
接收单元,用于接收所述代理服务器为响应客户端的访问请求所发送的回复数据包,以及接收所述客户端发送的认证数据包并从中提取所述客户端的用户名;
判断单元,用于判断所述回复数据包是否为预设类型数据包,且判断所述回复数据包中是否包含预设字符串;
配置单元,用于依据判断结果配置所述回复数据包中包含的所述预设字符串的首字符为预设字符;
计算和替换单元,用于重新计算经配置后的所述回复数据包的TCP校验和并予以替换;
发送单元,用于发送经配置和重新计算后的所述回复数据包至客户端,使得所述客户端将其与代理服务器的认证方式设置为NTLM认证方式。
在本发明所述的获取Kerberos认证方式的用户名的装置中,所述预设类型数据包包括应用层的首12字节为“HTTP/1.1 407”的数据包和应用层的首12字节为“HTTP/1.1 401”的数据包。
在本发明所述的获取Kerberos认证方式的用户名的装置中,所述预设字符串包括“Kerberos\r\n”和“Negotiate\r\n”。
本发明还提供一种获取Kerberos认证方式的用户名的系统,包括客户端、域控制器、代理服务器,还包括:
用户名获取装置,与所述客户端和代理服务器通信连接,用于获取所述客户端的用户名,所述用户名获取装置包括:
设置单元,用于设置代理服务器的用户认证方式为集成认证方式;
接收单元,用于接收所述代理服务器为响应客户端的访问请求所发送的回复数据包,以及接收所述客户端发送的认证数据包并从中提取所述客户端的用户名;
判断单元,用于判断所述回复数据包是否为预设类型数据包,且判断所述回复数据包中是否包含预设字符串;
配置单元,用于依据判断结果配置所述回复数据包中包含的所述预设字符串的首字符为预设字符;
计算和替换单元,用于重新计算经配置后的所述回复数据包的TCP校验和并予以替换;
发送单元,用于发送经配置和重新计算后的所述回复数据包至客户端,使得所述客户端将其与代理服务器的认证方式设置为NTLM认证方式。
本发明的有益效果是,在使用代理服务器且支持集成认证方式的环境下,通过配置或修改数据包中的预设字符串中的预设字符,从而使得客户端的认证方式设置为NTML认证方式,在客户端发送认证数据包时就可以从中获取到客户端对应的用户名,通过分析网络上传送的该用户名对应的数据流来决定是否对该用户进行相应的控制措施。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是Kerberos协议的认证方式流程图;
图2是依据本发明一实施例的获取Kerberos认证方式的用户名的方法流程图;
图3是图1中步骤103的详细流程图;
图4是依据本发明一实施例的获取Kerberos认证方式的用户名的装置结构示意图;
图5是依据本发明一实施例的获取Kerberos认证方式的用户名的系统结构示意图;
图6是在代理环境下使用图1所示的获取用户名方法之后的数据通信示意图。
具体实施方式
图2是依据本发明一实施例的获取Kerberos认证方式的用户名的方法100流程图,图2所示的获取用户名的方法可由部署在客户端和代理服务器之间的审计或流控设备来完成。由于Kerberos认证方式环境下,传送的数据包中未包含用户名等信息,因此审计或流控设备若想获取Kerberos认证方式环境下的用户名等信息是不可能的。若想获取用户名,需要将客户端和代理服务器之间的认证方式修改为NTLM,具体实现步骤如下:
步骤201,设置代理服务器的用户认证方式为集成认证方式;
步骤202,接收所述代理服务器为响应客户端的访问请求所发送的回复数据包;
步骤203,判断所述回复数据包是否为预设类型数据包,且判断所述回复数据包中是否包含预设字符串;
步骤204,依据判断结果配置所述回复数据包中包含的所述预设字符串的首字符为预设字符;首字符即首字节。
步骤205,重新计算经配置后的所述回复数据包的TCP校验和并予以替换;即,重新计算TCP校验和,并将新的TCP校验和写入回复数据包中的TCP校验和位置,替换之前的TCP校验和。
步骤206,发送经配置和重新计算后的所述回复数据包至客户端,使得所述客户端将其与代理服务器的认证方式设置为NTLM认证方式;
步骤207,接收所述客户端发送的认证数据包并从中提取所述客户端的用户名。
其中,集成认证方式包括Kerberos认证方式、NTLM认证方式和Negotiate认证方式。设置为集成认证方式后,代理服务器会回发一个包含NTLM、Kerberos以及Negotiate代理认证方式字段的恢复包,客户端可根据代理服务器返回的回复数据包进行协商,如果客户端支持Kerberos则使用Kerberos,否则使用NTLM(win 2003以上系统默认是Kerberos)。为了获取客户端的用户名信息,则必需使得认证方式的选择权不由客户端决定,因此将代理服务器返回的回复数据包的代理认证方式字段进行修改,使得客户端将其与代理服务器的认证方式强制设置为NTLM认证方式。而在NTLM认证方式中,由于客户端发送的数据包(通常使用Base64编码的)中包含用户名信息,通过解码该数据包就可以获取到用户名,并据此分析网络上传送的该用户名对应的数据流来决定是否对该用户进行相应的控制措施。
图3是图2中步骤203的详细流程图。在本发明中,预设类型数据包包括应用层的首12字节为“HTTP/1.1 407”的数据包(或称为407回包)和应用层的首12字节为“HTTP/1.1 401”的数据包(或称为401回包)。预设字符串包括“Kerberos\r\n”和“Negotiate\r\n”。
其中,图2中的步骤203包括图3所示的步骤2031和步骤2032。
在步骤2031中,判断数据包是否为应用层的首12字节为407回包或401回包。若是,则进入步骤2032,进一步判断所述回复数据包中是否包含预设字符串,若否,则结束。
在步骤2032中,判断回复数据包中是否包含“Kerberos\r\n”或“Negotiate\r\n”,若包含“Kerberos\r\n”或“Negotiate\r\n”中任一个,则进入步骤104;若“Kerberos\r\n”和“Negotiate\r\n”中任一个都不包含,则结束。其中在判断数据包中是否包含“Kerberos\r\n”或“Negotiate\r\n”,主要是判断数据包的应用层中是否包含“Kerberos\r\n”或“Negotiate\r\n”。在判断是否包含“Kerberos\r\n”或“Negotiate\r\n”之前,还需判断数据包的应用层中是否包含“Proxy-Authenticate:”(冒号后面有一个空格)。不过一般情况下,代理服务器发送的数据包中都会包含“Proxy-Authenticate:”,因此可以根据需要决定是否做此判断。
在步骤204中,如果所述回复数据包为应用层的首12字节为“HTTP/1.1407”或“HTTP/1.1 401”的数据包且所述回复数据包中包含“Kerberos\r\n”或“Negotiate\r\n”,则配置回复数据包中包含的“Kerberos\r\n”和“Negotiate\r\n”的首字符为预设字符。在本发明中,预设字符可以任意设置,只要保证将“Kerberos\r\n”的首字符“K”更改为非K字符,将“Negotiate\r\n”的首字符“N”更改为非N字符即可。例如但不限于将“K”和“N”都更改为“0”,即“Kerberos\r\n”更改为“0erberos\r\n”,“Negotiate\r\n”更改为“0egotiate\r\n”。“Kerberos\r\n”和“Negotiate\r\n”的首字符更改的唯一原则就是使得回复数据包中不再包含字符串“Kerberos\r\n”和“Negotiate\r\n”。
由于对数据包中的“Kerberos\r\n”和“Negotiate\r\n”的首字符进行了更改,数据包中的原来的TCP校验和已错误,为了使得数据包能够正常发送和识别,需要对TCP校验和进行重新计算和替换。这样,客户端收到该数据包后,就会将其与代理服务器的认证方式设置为NTLM认证方式。
关于图2和图3所示流程图的处理过程总结如下:
1)判断首12字节是否为“HTTP/1.1 407”回包或“HTTP/1.1 401”回包;
2)如果为“HTTP/1.1 407”回包或“HTTP/1.1 401”回包,判断随后的数据是否包含“Proxy-Authenticate:”(冒号后面有一个空格);以及判断“Proxy-Authenticate:”字段后面紧跟的数据是否为“Kerberos\r\n”或“Negotiate\r\n”,如果是则修改这两种字符串的第一个字节并继续步骤(3);
3)然后继续回到步骤1)进行判断,直到数据包末尾。
因此,以407回包为例,我们关注的数据包内容大致如下:
HTTP/1.1 407
...(忽略中间内容)
Proxy-Authenticate:Negotiate\r\n
Proxy-Authenticate:Kerberos\r\n
...(忽略后面内容)
图4是依据本发明一实施例的获取Kerberos认证方式的用户名的装置400结构示意图。装置400即前文所述的审计或流控设备或者审计或流控设备中的一个部件,获取客户端的用户名。
装置400包括设置单元401、接收单元402、判断单元403、配置单元404、计算和替换单元405、发送单元406。
设置单元401,用于设置代理服务器的用户认证方式为集成认证方式;
接收单元402,用于接收所述代理服务器为响应客户端的访问请求所发送的回复数据包,以及接收所述客户端发送的认证数据包并从中提取所述客户端的用户名;
判断单元403,用于判断所述回复数据包是否为预设类型数据包,且判断所述回复数据包中是否包含预设字符串;
配置单元404,用于依据判断结果配置所述回复数据包中包含的所述预设字符串的首字符为预设字符;
计算和替换单元405,用于重新计算经配置后的所述回复数据包的TCP校验和并予以替换;
发送单元406,用于发送经配置和重新计算后的所述回复数据包至客户端,使得所述客户端将其与代理服务器的认证方式设置为NTLM认证方式。
其中,预设类型数据包包括应用层的首12字节为“HTTP/1.1 407”的数据包和应用层的首12字节为“HTTP/1.1 401”的数据包。预设字符串包括“Kerberos\r\n”和“Negotiate\r\n”。
图2-3中关于获取Kerberos认证方式的用户名的方法的详细描述适用于图4,此处不再赘述。
关于图4中的设置单元401可以单独设置,或者独立于装置400外设置,图4中示出了设置单元401包含在装置400中仅为示例,并不作为对本发明的限制。图4中可以不包含设置单元,由其它方式或装置来执行认证方式的设置操作,也就是说,装置400工作的前提是代理服务器的用户认证方式为集成认证方式。装置400可以单独设置,也可以设置于网桥设备中。包含装置400的网桥设备既可以完成路由和数据交换功能又可以获取用户名,实现对客户端用户的数据分析和监控。
图5是依据本发明一实施例的获取Kerberos认证方式的用户名的系统500结构示意图。系统500包括客户端501、域控制器502、代理服务器503,用户名获取装置504。
用户名获取装置504,与客户端501和代理服务器503通信连接,用于获取客户端501的用户名,用户名获取装置504的具体结构与图4所示的装置400相同,图4中关于装置400的描述适用于图5中的用户名获取装置504,此处不再赘述。客户端501与用户名获取装置504和域控制器502的数据通信还需要核心交换机来实现,图中未示出。
图6是在代理环境下使用图1所示的获取用户名方法之后的数据通信示意图。在此实施例中,以407回包为例进行阐述。用户名获取装置为图4中的装置400或图5中的用户名获取装置504,图6中的用户名获取装置也可以是包含装置400或用户名获取装置504的网桥设备。
用户名获取装置获取到来自代理服务器的回复数据包(这里示出的是407回包,还可以是401回包)后,判断该回复数据包为407回包后,将407回包中的“Negotiate”和“Kerberos”中的首字母“N”、“K”更改为“0”。此处的更改方式仅为示例,只要保证将“Kerberos\r\n”的首字符“K”更改为非K字符,将“Negotiate\r\n”的首字符“N”更改为非N字符即可,如前文所述。
经过处理后的回复数据包传送到客户端,客户端将用户认证方式设置成NTLM认证方式,客户端随后发送的数据包中就会包含用户名,用户名获取装置通过截获传送路径上的数据包就能得知用户名,并能获取用户名对应的数据流,从而对该用户的操作行为进行分析和控制。
图6中,代理服务器以及客户端均加入域(例如公司或企业局域网的域)中,并设置好域上的用户名以及密码。图中,代理服务器通过核心路由器与web服务器进行交互。下面对采用本发明获取用户名的方法后的处理过程和显示结果进行阐述:
1)将代理服务器用户身份认证方式设置为集成方式。
2)用户名获取装置(例如流量分析或审计设备)开启篡改数据包以及获取NTLM用户名的功能。
3)客户端PC的浏览器设置web代理上网,指向代理服务器。
4)在PC上使用wireshark(一种网络封包分析软件)进行抓包,当然还可以使用其它抓包工具。
5)通过浏览器上网,弹出认证框后,输入客户端在域上设置好的用户名与密码。
可以发现,wireshark抓包的http 407回包中的“Kerberos”以及“Negotiate”字段已经被改为“0erberos”和“0egotiate”,后续认证方式也自动转换成NTLM,且浏览器正常上网,用户名获取装置(例如流量分析或审计设备)上也正确地提取了用户名。
本发明通常可应用在对企业或集团的局域网或其它区域网络中的用户的数据交互行为进行管理和监控。便于公司或企业管理其员工,保证公司的机密信息不对外公开,同时也能及时地制止不正常或非法的数据传递活动。一旦发现问题,所接收的数据包不再继续发送给代理服务器。
本发明在使用代理服务器且同时支持NTLM和Kerberos认证方式的环境下,通过篡改数据包的方式,令代理服务器的协商的身份认证方式由Kerberos变为NTLM,从而能够从中提取用户名,解决了在这种网络场景中,流量分析或审计设备无法进行用户实名制分析的问题。
Claims (10)
1.一种获取Kerberos认证方式的用户名的方法,其特征在于,包括:
设置代理服务器的用户认证方式为集成认证方式;
接收所述代理服务器为响应客户端的访问请求所发送的回复数据包;
判断所述回复数据包是否为预设类型数据包,且判断所述回复数据包中是否包含预设字符串;
依据判断结果配置所述回复数据包中包含的所述预设字符串的首字符为预设字符;
重新计算经配置后的所述回复数据包的TCP校验和并予以替换;
发送经配置和重新计算后的所述回复数据包至所述客户端,使得所述客户端将其与代理服务器的认证方式设置为NTLM认证方式;
接收所述客户端发送的认证数据包并从中提取所述客户端的用户名。
2.根据权利要求1所述的方法,其特征在于,所述集成认证方式包括Kerberos认证方式、NTLM认证方式和Negotiate认证方式。
3.根据权利要求1所述的方法,其特征在于,所述预设类型数据包包括应用层的首12字节为“HTTP/1.1 407”的数据包和应用层的首12字节为“HTTP/1.1 401”的数据包;
其中,判断所述回复数据包是否为预设类型数据包具体包括:判断所述数据包是否为应用层的首12字节为“HTTP/1.1 407”或“HTTP/1.1 401”的数据包。
4.根据权利要求3所述的方法,其特征在于,所述预设字符串包括“Kerberos\r\n”和“Negotiate\r\n”;
其中,判断所述回复数据包中是否包含预设字符串具体包括:判断所述回复数据包中是否包含“Kerberos\r\n”或“Negotiate\r\n”。
5.根据权利要求4所述的方法,其特征在于,其中,依据判断结果配置所述回复数据包中包含的所述预设字符串的首字符为预设字符具体包括:
如果所述回复数据包为应用层的首12字节为“HTTP/1.1 407”或“HTTP/1.1 401”的数据包且所述回复数据包中包含“Kerberos\r\n”或“Negotiate\r\n”,则配置所述回复数据包中包含的“Kerberos\r\n”和“Negotiate\r\n”的首字符为预设字符。
6.根据权利要求1~5任一项所述的方法,其特征在于,所述预设字符为“0”字符。
7.一种获取Kerberos认证方式的用户名的装置,其特征在于,包括:
设置单元,用于设置代理服务器的用户认证方式为集成认证方式;
接收单元,用于接收所述代理服务器为响应客户端的访问请求所发送的回复数据包,以及接收所述客户端发送的认证数据包并从中提取所述客户端的用户名;
判断单元,用于判断所述回复数据包是否为预设类型数据包,且判断所述回复数据包中是否包含预设字符串;
配置单元,用于依据判断结果配置所述回复数据包中包含的所述预设字符串的首字符为预设字符;
计算和替换单元,用于重新计算经配置后的所述回复数据包的TCP校验和并予以替换;
发送单元,用于发送经配置和重新计算后的所述回复数据包至客户端,使得所述客户端将其与代理服务器的认证方式设置为NTLM认证方式。
8.根据权利要求7所述的装置,其特征在于,所述预设类型数据包包括应用层的首12字节为“HTTP/1.1 407”的数据包和应用层的首12字节为“HTTP/1.1 401”的数据包。
9.根据权利要求8所述的装置,其特征在于,所述预设字符串包括“Kerberos\r\n”和“Negotiate\r\n”。
10.一种获取Kerberos认证方式的用户名的系统,包括客户端、域控制器、代理服务器,其特征在于,还包括:
用户名获取装置,与所述客户端和代理服务器通信连接,用于获取所述客户端的用户名,所述用户名获取装置包括:
设置单元,用于设置代理服务器的用户认证方式为集成认证方式;
接收单元,用于接收所述代理服务器为响应客户端的访问请求所发送的回复数据包,以及接收所述客户端发送的认证数据包并从中提取所述客户端的用户名;
判断单元,用于判断所述回复数据包是否为预设类型数据包,且判断所述回复数据包中是否包含预设字符串;
配置单元,用于依据判断结果配置所述回复数据包中包含的所述预设字符串的首字符为预设字符;
计算和替换单元,用于重新计算经配置后的所述回复数据包的TCP校验和并予以替换;
发送单元,用于发送经配置和重新计算后的所述回复数据包至客户端,使得所述客户端将其与代理服务器的认证方式设置为NTLM认证方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110000470 CN102025748B (zh) | 2011-01-04 | 2011-01-04 | 获取Kerberos认证方式的用户名的方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110000470 CN102025748B (zh) | 2011-01-04 | 2011-01-04 | 获取Kerberos认证方式的用户名的方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102025748A true CN102025748A (zh) | 2011-04-20 |
CN102025748B CN102025748B (zh) | 2013-01-23 |
Family
ID=43866602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110000470 Active CN102025748B (zh) | 2011-01-04 | 2011-01-04 | 获取Kerberos认证方式的用户名的方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102025748B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102647461A (zh) * | 2012-03-29 | 2012-08-22 | 奇智软件(北京)有限公司 | 基于超文本传输协议的通信方法、服务器、终端 |
CN104092702A (zh) * | 2014-07-22 | 2014-10-08 | 北京京东尚科信息技术有限公司 | 一种分布式系统的网络安全验证方法和系统 |
CN104378454A (zh) * | 2014-10-25 | 2015-02-25 | 深信服网络科技(深圳)有限公司 | 获取终端名称的系统、方法和装置 |
CN104660583A (zh) * | 2014-12-29 | 2015-05-27 | 国家电网公司 | 一种基于Web加密服务的加密服务方法 |
CN106230865A (zh) * | 2016-09-29 | 2016-12-14 | 郑州云海信息技术有限公司 | 一种安全访问监控方法、系统及大数据平台 |
CN106375323A (zh) * | 2016-09-09 | 2017-02-01 | 浪潮软件股份有限公司 | 一种多租户模式下kerberos身份认证的方法 |
CN107483466A (zh) * | 2017-08-30 | 2017-12-15 | 郑州云海信息技术有限公司 | 一种Web应用中用户登录验证方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1599312A (zh) * | 2004-07-28 | 2005-03-23 | 港湾网络有限公司 | 网络设备组网中的对称认证方法和组网方法 |
CN1722658A (zh) * | 2004-03-19 | 2006-01-18 | 微软公司 | 计算机系统的有效的和安全的认证 |
CN1783780A (zh) * | 2004-12-04 | 2006-06-07 | 华为技术有限公司 | 域认证和网络权限认证的实现方法及设备 |
US20080178276A1 (en) * | 2007-01-19 | 2008-07-24 | Microsoft Corporation | Mechanism for utilizing kerberos features by an ntlm compliant entity |
US20090119504A1 (en) * | 2005-08-10 | 2009-05-07 | Riverbed Technology, Inc. | Intercepting and split-terminating authenticated communication connections |
CN101911585A (zh) * | 2008-01-04 | 2010-12-08 | 微软公司 | 基于认证输入属性的选择性授权 |
-
2011
- 2011-01-04 CN CN 201110000470 patent/CN102025748B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1722658A (zh) * | 2004-03-19 | 2006-01-18 | 微软公司 | 计算机系统的有效的和安全的认证 |
CN1599312A (zh) * | 2004-07-28 | 2005-03-23 | 港湾网络有限公司 | 网络设备组网中的对称认证方法和组网方法 |
CN1783780A (zh) * | 2004-12-04 | 2006-06-07 | 华为技术有限公司 | 域认证和网络权限认证的实现方法及设备 |
US20090119504A1 (en) * | 2005-08-10 | 2009-05-07 | Riverbed Technology, Inc. | Intercepting and split-terminating authenticated communication connections |
US20080178276A1 (en) * | 2007-01-19 | 2008-07-24 | Microsoft Corporation | Mechanism for utilizing kerberos features by an ntlm compliant entity |
CN101911585A (zh) * | 2008-01-04 | 2010-12-08 | 微软公司 | 基于认证输入属性的选择性授权 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102647461A (zh) * | 2012-03-29 | 2012-08-22 | 奇智软件(北京)有限公司 | 基于超文本传输协议的通信方法、服务器、终端 |
CN102647461B (zh) * | 2012-03-29 | 2016-05-04 | 北京奇虎科技有限公司 | 基于超文本传输协议的通信方法、服务器、终端 |
CN104092702A (zh) * | 2014-07-22 | 2014-10-08 | 北京京东尚科信息技术有限公司 | 一种分布式系统的网络安全验证方法和系统 |
CN104092702B (zh) * | 2014-07-22 | 2017-05-31 | 北京京东尚科信息技术有限公司 | 一种分布式系统的网络安全验证方法和系统 |
CN104378454A (zh) * | 2014-10-25 | 2015-02-25 | 深信服网络科技(深圳)有限公司 | 获取终端名称的系统、方法和装置 |
CN104378454B (zh) * | 2014-10-25 | 2018-10-12 | 深信服网络科技(深圳)有限公司 | 获取终端名称的系统、方法和装置 |
CN104660583A (zh) * | 2014-12-29 | 2015-05-27 | 国家电网公司 | 一种基于Web加密服务的加密服务方法 |
CN104660583B (zh) * | 2014-12-29 | 2018-05-29 | 国家电网公司 | 一种基于Web加密服务的加密服务方法 |
CN106375323A (zh) * | 2016-09-09 | 2017-02-01 | 浪潮软件股份有限公司 | 一种多租户模式下kerberos身份认证的方法 |
CN106230865A (zh) * | 2016-09-29 | 2016-12-14 | 郑州云海信息技术有限公司 | 一种安全访问监控方法、系统及大数据平台 |
CN107483466A (zh) * | 2017-08-30 | 2017-12-15 | 郑州云海信息技术有限公司 | 一种Web应用中用户登录验证方法及装置 |
CN107483466B (zh) * | 2017-08-30 | 2020-11-24 | 苏州浪潮智能科技有限公司 | 一种Web应用中用户登录验证方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102025748B (zh) | 2013-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103685282B (zh) | 一种基于单点登录的身份认证方法 | |
US9330245B2 (en) | Cloud-based data backup and sync with secure local storage of access keys | |
CN101340436B (zh) | 基于便携式存储设备实现远程访问控制的方法及装置 | |
CN101605137B (zh) | 安全分布式文件系统 | |
CN102025748B (zh) | 获取Kerberos认证方式的用户名的方法、装置和系统 | |
CN201194396Y (zh) | 基于透明代理网关的安全网关平台 | |
CN101292496A (zh) | 服务器-客户端计算机网络系统中执行密码操作的设备和方法 | |
CN105162808B (zh) | 一种基于国密算法的安全登录方法 | |
CN103229452A (zh) | 移动手持设备的识别和通信认证 | |
CN102685086A (zh) | 一种文件访问方法和系统 | |
JP5602165B2 (ja) | ネットワーク通信を保護する方法および装置 | |
CN105119894B (zh) | 基于硬件安全模块的通信系统及通信方法 | |
CN107800675A (zh) | 一种数据传输方法、终端以及服务器 | |
CN104767731A (zh) | 一种Restful移动交易系统身份认证防护方法 | |
CN107040513A (zh) | 一种可信访问认证处理方法、用户终端和服务端 | |
CN101695038A (zh) | 检测ssl加密数据安全性的方法及装置 | |
CN108989290A (zh) | 一种在外网中实现服务器网络访问限制的控制方法及控制装置 | |
CN104901940A (zh) | 一种基于cpk标识认证的802.1x网络接入方法 | |
CN113242238B (zh) | 安全通信方法、装置及系统 | |
CN103108028A (zh) | 一种具有安全架构的云计算处理系统 | |
CN100514333C (zh) | 一种数据库安全访问方法和系统 | |
CN106936588A (zh) | 一种硬件控制锁的托管方法、装置及系统 | |
CN109462572B (zh) | 基于加密卡和UsbKey的多因子认证方法、系统、存储介质及安全网关 | |
CN110891065A (zh) | 一种基于Token的用户身份辅助加密的方法 | |
JP2001186122A (ja) | 認証システム及び認証方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200611 Address after: Nanshan District Xueyuan Road in Shenzhen city of Guangdong province 518000 No. 1001 Nanshan Chi Park building A1 layer Patentee after: SANGFOR TECHNOLOGIES Inc. Address before: 518000 Nanshan Science and Technology Pioneering service center, No. 1 Qilin Road, Guangdong, Shenzhen 418, 419, Patentee before: Shenxin network technology (Shenzhen) Co.,Ltd. |
|
TR01 | Transfer of patent right |