Web Application Proxy

Web Application Proxy 是YARN的一部分。

默认情况下,它将作为资源管理器(RM)的一部分运行,但可以配置为以独立模式运行。
代理的原因是通过YARN减少网络攻击的可能性。

在YARN中,应用程序主(AM)有责任提供一个web UI并将该链接发送到RM。这就引出了一些潜在的问题。
RM作为一个受信任的用户运行,访问该web地址的人将处理它,并将其提供给它们作为受信任的链接,在现实中,AM是作为一个不受信任的用户运行的,它给RM的链接可以指向任何恶意的或其他的东西。
Web应用程序代理通过警告用户不拥有他们正在连接到一个不可信站点的应用程序,从而减轻了这种风险。

此外,代理还试图减少恶意AM对用户的影响。它主要是通过从用户中删除cookie来实现这一点,并使用一个提供用户登录用户名的cookie来替换它们。这是因为大多数基于web的身份验证系统将根据cookie识别用户。通过将这个cookie提供给一个不受信任的应用程序,它打开了开发的潜力。如果正确设计了cookie,它的潜力应该很小,但这只是为了减少潜在的攻击向量。
当前的代理实现并没有阻止AM提供指向恶意外部站点的链接,也不做任何防止恶意javascript代码运行的事情。
实际上,javascript可以用来获取cookie,因此从请求中删除cookie在这个时候是没有什么好处的。

在未来,我们希望解决上面描述的攻击向量,并使附加到AM的web UI更安全。

部署Web Application Proxy

Configuration Property Description
yarn.web-proxy.address The address for the web proxy as HOST:PORT, if this is not given then the proxy will run as part of the RM.
yarn.web-proxy.keytab Keytab for WebAppProxy, if the proxy is not running as part of the RM.
yarn.web-proxy.principal The kerberos principal for the proxy, if the proxy is not running as part of the RM.

运行 Web Application Proxy
可以使用以下命令启动独立的Web应用程序代理服务器。

$ yarn proxyserver

或者用户可以作为一个守护进程启动独立的Web应用程序代理服务器,使用以下通信。

$ $HADOOP_YARN_HOME/sbin/yarn-daemon.sh start proxyserver

官方文档原文

Web Application Proxy

The Web Application Proxy is part of YARN. By default it will run as part of the Resource Manager(RM), but can be configured to run in stand alone mode. The reason for the proxy is to reduce the possibility of web based attacks through YARN.

In YARN the Application Master(AM) has the responsibility to provide a web UI and to send that link to the RM. This opens up a number of potential issues. The RM runs as a trusted user, and people visiting that web address will treat it, and links it provides to them as trusted, when in reality the AM is running as a non-trusted user, and the links it gives to the RM could point to anything malicious or otherwise. The Web Application Proxy mitigates this risk by warning users that do not own the given application that they are connecting to an untrusted site.

In addition to this the proxy also tries to reduce the impact that a malicious AM could have on a user. It primarily does this by stripping out cookies from the user, and replacing them with a single cookie providing the user name of the logged in user. This is because most web based authentication systems will identify a user based off of a cookie. By providing this cookie to an untrusted application it opens up the potential for an exploit. If the cookie is designed properly that potential should be fairly minimal, but this is just to reduce that potential attack vector. The current proxy implementation does nothing to prevent the AM from providing links to malicious external sites, nor does it do anything to prevent malicious javascript code from running as well. In fact javascript can be used to get the cookies, so stripping the cookies from the request has minimal benefit at this time.

In the future we hope to address the attack vectors described above and make attaching to an AM’s web UI safer.

官方文档:http://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/WebApplicationProxy.html

Hadoop Web应用程序代理服务器 | Hadoop Web Application Proxy相关推荐

  1. Windows azure Web 应用程序代理服务器—ADFS的extranet访问权限

    Windows azure Web 应用程序代理服务器-ADFS的extranet访问权限 我们之前介绍了,在windows azure下配置联合身份验证服务,实现通过本地的Active Direcr ...

  2. 渐进式web应用程序_渐进式Web应用程序简介

    渐进式web应用程序 Interested in learning JavaScript? Get my ebook at jshandbook.com 有兴趣学习JavaScript吗? 在jsha ...

  3. WEB应用程序及IIS WEB 服务器介绍

    I.         了解 Web 应用程序 1.      概述 Web 应用程序是一个包含多个页的 Web 站点,这些页可能是静态的 html 网页,也可能是动态的网页(如: ASP.NET . ...

  4. 渐进式web应用程序_渐进式Web应用程序:简介

    如果您从事网站建设业务,那么您可能会越来越多地听到人们谈论渐进式Web应用程序 (PWA). 由Google开发的PWA在吸引用户方面具有网络的所有优势,以及用户可以从本地应用程序获得的速度和可靠性. ...

  5. c#创建web应用程序_创建Web应用程序图标集的6个步骤

    c#创建web应用程序 I am not great at creating logos or icons, mainly because of the lack of practice. So wh ...

  6. 渐进式web应用程序_渐进式Web应用程序与加速的移动页面:有什么区别,哪种最适合您?

    渐进式web应用程序 Do you understand what PWAs and AMPs are, and which might be better for you? Let's have a ...

  7. 渐进式web应用程序_渐进式Web应用程序终极指南

    渐进式web应用程序 Progressive Web Apps, aka PWAs, are the best way for developers to make their webapps loa ...

  8. ATL服务器:用 Visual C++创建的高性能的Web应用程序和XML Web 服务

    C++是很多网络中繁忙站点的核心.这为构建中间层企业逻辑提供了高度的性能基础,经常用于扩展Web 服务器和动态地生成HTML.今天使用Internet信息服务(IIS)和Visual Studio?的 ...

  9. 渐进式Web应用程序居然是Web开发的未来

    导言 在不断变化的市场均衡中,随着对更多可扩展和跨平台Web和企业应用程序的需求的增加,Web开发环境发生了迅速的变化.为了帮助企业解决其业务需求,并与客户无缝地使用一系列设备和平台,遗留的Web应用 ...

  10. Web 应用程序防火墙 (WAF) 相关知识介绍

    Web应用程序防火墙 (WAF) 如何工作? Web应用防护系统(也称为:网站应用级入侵防御系统.英文:Web Application Firewall,简称:WAF).利用国际上公认的一种说法:We ...

最新文章

  1. 字符串拼接还在用StringBuilder?快试试Java8中的StringJoiner吧,真香!
  2. android之descendantFocusability用法简析
  3. Runtime.getRuntime().exec(...)使用方法
  4. ubuntu安装mysql,error: No curses/termcap library found报错
  5. neo4j 修改密码
  6. 备份mysql的批处理命令
  7. Android框架式编程之MVP架构
  8. ★_当第二次检测时我的65047777
  9. oracle下载jdk需要注册怎么办? jdk8下载
  10. 南京地图全图 南京卫星地图下载 百度高清卫星地图含道路、标签信息叠加
  11. jclasslib插件_在IDEA利用断点debug+解析class文件+jclasslib插件
  12. OLAP和多维数据模型
  13. 查理·芒格:分享12个顶级思维模型
  14. 【禅道的使用】软件测试管理工具-禅道(思维导图详解)
  15. Linux中配置RAID磁盘阵列
  16. 来来来!java程序员个人优势
  17. dedecms织梦系统安装步骤
  18. jsp_asp_php,PHP/JSP/ASP
  19. linux中的su-命令的功能,linux su命令参数及用法详解(linux切换用户命令)
  20. 如何留住优秀的测试人员

热门文章

  1. WinCC RT Adv 项目下载与自动运行
  2. love2d贪吃蛇---蛇
  3. 霍夫曼编码和LZ编码
  4. MySQL与MariaDB性能比拼
  5. wlan消失 网络适配器文件夹空了 设备管理器黄色感叹号 wifi那里看不到任何WiFi解决
  6. qq(q音乐)扫码授权登陆分析及python实现
  7. python---字典详解
  8. gaussdb 日常运维命令总结【01】
  9. 年薪百万不如狗?深圳的程序员才是买房界的黑天鹅!
  10. 域名Whois查询API,域名Whois,域名历史Whois