Что касается безопасности на стороне клиента, то делает ли CORS что-либо кроме подрывной политики того же происхождения? - PullRequest
6 голосов
/ 05 июня 2011

(а если нет, то действительно ли это улучшает безопасность на стороне клиента?)

Я имею в виду случай, когда скрипт с сервера X использует XHR для получения и запуска ненадежного кода с сервера Y (который поддерживаетCORS).

(очевидно, недоверяемый код плохой ™)

Ответы [ 3 ]

6 голосов
/ 26 марта 2012

CORS - это не усиление безопасности , а ослабление этого (но только при определенных условиях с разрешения сервера).

Если вы хотите получить доступ к чему-либо с другого сервера в запросе AJAX, без CORS, вам не разрешено из-за «безопасности» (та же политика происхождения), и на этом все * С помощью CORS другой сервер может дать разрешение на снижение этого барьера безопасности.

* За исключением таких хаков, как JSONP, но для этого также требуется разрешение от сервера.

6 голосов
/ 05 июня 2011

Я вообще не использую CORS для улучшения безопасности. Я использую CORS для доступа к известному веб-сервису в другом домене, к которому у меня не будет доступа без CORS. По моему мнению, это никак не связано с повышением безопасности, но позволяет передавать данные из одного домена в другой.

1 голос
/ 17 марта 2015

CORS подрывает политику того же происхождения, но выборочно. Например, домен веб-сайта банка вообще не будет устанавливать заголовок CORS (чтобы сохранить тот же источник в полном объеме), так как никакой JavaScript, загруженный из других доменов, не должен делать запросы AJAX банку (или, возможно, они разрешают только партнерский сайт, которому доверяют ). CDN, вероятно, установит Access-Control-Allow-Origin "*", так как ему все равно, если JavaScript, загруженный из другого домена, выполняет AJAX-запросы к CDN.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...