Welcome! Log In Create A New Profile

Advanced

Re: Access-Control-Allow-Origin

Dmitry Dedukhin
October 14, 2011 12:52AM
13.10.2011 21:38, anon пишет:
> Всем привет.
>
> В ходе работы возникло несколько
> вопросов по этому заголовку.
>
> 1)Если добавляем:
>
>
> add_header Access-Control-Allow-Origin http://127.0.0.1:8055;
> add_header Access-Control-Allow-Origin https://mail.google.com;
> add_header Access-Control-Allow-Origin https://docs.google.com;
>
> То не сервер отдает пустой ответ не
> смотря на правильно передающийся Origin.
> Если выставить add_header Access-Control-Allow-Origin *;
> получаем ответ.
>
> 2) Чем чревато все же выставление
> Access-Control-Allow-Origin * на весь сайт? В целом
> понятно, что 6 соединений из браузера и
> все такое, но какую это может нести в
> себе реальную угрозу?
>
> Спасибо.
>
> Posted at Nginx Forum: http://forum.nginx.org/read.php?21,216660,216660#msg-216660
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru

Насколько я помню, в данный момент ни один браузер не поддерживает
наличие нескольких заголовков Access-Control-Allow-Origin (а возможно
это и задизайнированное поведение).
"Чреватость" звездочки для меня самого остается загадкой, в голову
приходит только то, что злоумышленник может с любого сайта не только
делать GET/POST запросы, но и получать на них ответ. Но при этом из
браузера нет доступа к большинству заголовков ответа
http://www.w3.org/TR/cors/#handling-a-response-to-a-cross-origin-re (в
частности, к кукам), так что лично я не вижу никакой потенциальной
опасности от звездочки.
Может быть кто-то поправит меня и опасность в звездочке таки есть...

PS: возможно получится проверять заголовок Referer в конфиге (например,
с помощью серии директив if) и выставлять нужное значение как-то так:

set $origin "http://mysite.ru";
if ($http_referer ~* ^http://trusted_domain1\.ru) {
set $origin "http://trusted_domain1.ru";
}
if ($http_referer ~* ^http://trusted_domain2\.ru) {
set $origin "http://trusted_domain2.ru";
}
add_header Access-Control-Allow-Origin $origin;

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Access-Control-Allow-Origin

anon October 13, 2011 01:38PM

Re: Access-Control-Allow-Origin

Dmitry Dedukhin October 14, 2011 12:52AM

Re: Access-Control-Allow-Origin

Igor Sysoev October 14, 2011 01:20AM

Re: Access-Control-Allow-Origin

DevZone October 15, 2012 04:50AM

Re: Access-Control-Allow-Origin

DevZone October 15, 2012 04:51AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 49
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready