如何在angular-4应用程序中防止点击劫持攻击?

时间:2018-08-08 07:15:08

标签: angular

我想停止在IFRAME中打开我的角度应用程序。 我在Google上阅读了一些文章,并知道要实现这一目标,我们必须设置X-Frame-Options。但是我没有找到提供此标头的方法。

有人可以帮助我如何在angular-4中实现这一目标吗?

2 个答案:

答案 0 :(得分:1)

与角度应用程序无关。这是IIS中的设置。要在IIS服务器中设置X-Frame-Options,请执行以下操作,

  1. 打开IIS。
  2. 选择要设置X-Frame-Options的站点。
  3. 双击显示选项的右侧中间窗格中的HTTP Response Headers图标。
  4. 在“操作”面板中单击“添加”链接以添加标题。在页面中输入X-Frame-Options 在“名称”字段中,在“值”字段中键入`SAMEORIGIN。
  5. 单击“确定”保存更改。

关于点击劫持攻击的更多详细信息是here

希望这可以解决您的问题。

答案 1 :(得分:0)

这是Angular的解决方案:-

http://taimooradilbadshah.blogspot.com/2014/06/the-clickjacking-attack-and-x-frame.html

我在服务器(IIS)上制作了一个web.config文件,在其中放置了构建(dist)代码。

它也适用于Angular路由(忽略使用井号(#))。

web.config

<?xml version="1.0"?>
<configuration>
    <system.webServer>

        <httpProtocol>
            <customHeaders>
              <add name="X-Frame-Options" value="SAMEORIGIN" />
            </customHeaders>
         </httpProtocol>

        <rewrite>
          <rules>
            <rule name="AngularJS Routes" stopProcessing="true">
              <match url=".*" />
              <conditions logicalGrouping="MatchAll">
                <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                <add input="{REQUEST_URI}" pattern="^/(api)" negate="true" />
              </conditions>
              <action type="Rewrite" url="/angularProject/index.html" />
            </rule>
          </rules>
        </rewrite>
     </system.webServer>
 </configuration>

输入上面的代码后,您可以在这里检查您的网站:-

https://www.lookout.net/test/clickjack.html

谢谢