Web应用代理是YARN的一部分. 默认地,它会作为 Resource Manager(RM)的一部分来运行, 但是也可以配置成独立运行的模式。使用代理的原因就是降低通过YARN的web攻击的可能性。
在YARN中,Application Master(AM) 有责任提供web界面并把链接发给RM。这给一些可能的问题打开了大门。 RM 作为一个可信的用户在运行,访问那个web地址的用户会认为可信,它提供的链接也会被认为可信,但当实际上AM作为一个不被信任的用户运行,它给RM的链接可能指向任何恶意的地址。Web应用代理通过警告用户他们正在连接一个不属于他们的不被信任的应用,进而减轻危险。
另外,这个代理也试图降低一个恶意AM上可以有一个用户的影响。它会首先从用户中分离cookie,并用一个登录用户的名字作为独立cookie来替换。 这是因为大多数基于web的认证系统基于cookie验证用户。通过提供这个cookie给一个不被信任的应用,它对一些取得成绩(?)提供了可能。如果cookie被合理地设计过,就应该是相当小,但这仅仅降低了攻击的可能。当前的代理实现无论是对于通过提供链接给恶意站点来阻止AM,还是阻止javascript代码运行,还什么都没有做。实际上,javascript可以用来获取cookie,所以此时从请求中取得的cookie就只有最小的作用。
在未来,我们希望处理上述的攻击病毒,使得访问AM的web界面更加安全。
Hadoop-2.2.0中文文档—— Web应用代理,布布扣,bubuko.com
原文地址:http://blog.csdn.net/laozhaokun/article/details/25531203