1、什么是跨与访问
跨域访问简单来说就是有两个域名去同时访问一个页面。提到跨域访问就很容易想到现在最常见的CSRF攻击。那么何为CSRF攻击呢?接下来我就简单的用语言描述一下~
2、什么是CSRF攻击
现在有用户usr,网站A,恶意网站B。
1、用户usr去访问A
2、usr得到了A的cookies
3、在没有关闭登录网站A页面的情况下登录了恶意网站B
4、恶意网站B要求访问网站A
5、此时用户usr带着步骤2得到的cookies去访问网站A
6、此时网站A并不能识别到底是usr要访问还是恶意网站B要访问,这也就意味着,恶意网站B实现了隐藏自己身份,把自己伪装成usr的目的。
3、如何在nginx中设置允许跨域访问
这就是CSRF攻击的大概过程。因为存在CSRF攻击非常不安全,所以大多数浏览器是不允许进行跨域访问的。但是跨域访问有时候又是需要的,所以我们可以通过设置nginx来实现跨域访问。因为不太好演示,所以下面我仅列出一些配置语法:
adder_header name value;
name是http reponse header中的内容。
value代表了允许哪些网站进行跨域访问,如果允许全部网站进行跨域访问,则可将value用*表示。(当然了,为了安全考虑,尽量不要将value设置为 *).
在这里可以举两个例子:
add_header Acesss-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods GET POST;