CORS с нуля. Основы

แชร์
ฝัง
  • เผยแพร่เมื่อ 29 ธ.ค. 2024

ความคิดเห็น • 34

  • @samolevich
    @samolevich ปีที่แล้ว +5

    Самое лучшее что я видел на эту тему
    Просто подробнейшее и исчерпывающее объяснение
    Спасибо огромное

  • @alanpuch2243
    @alanpuch2243 ปีที่แล้ว +3

    Благодарю, в тумане начинает вырисовываться понимание запроса на сервер. 👦👍

  • @databox4279
    @databox4279 4 หลายเดือนก่อน +1

    огромная благодарность за разжовывание инфы. Сегодня пытался поженить Vue и Django и словил ступор. Благо сейчас есть GPT чат, но он так информацию подробно и исчерпывающе не предоставляет.

  • @Nik-h1y
    @Nik-h1y 11 หลายเดือนก่อน +1

    Отличное видео! Наконец-то до меня дошло что такое cors👍

  • @me29_hi8
    @me29_hi8 ปีที่แล้ว

    Даже за год после выхода, никто из авторов не смог догнать эту тему по качеству... Браво

  • @user-hw9cs6te5y
    @user-hw9cs6te5y 3 หลายเดือนก่อน

    Спасибо большое. Просто и понятно.❤

  • @prod.wembley3816
    @prod.wembley3816 ปีที่แล้ว +2

    Потрясающее разьяснение!

  • @someChicoRy
    @someChicoRy ปีที่แล้ว

    Круто. Всё по теме и без воды( наверное)))))

  • @saber1in
    @saber1in ปีที่แล้ว

    Лучшее объяснение

  • @seoonlyRU
    @seoonlyRU ปีที่แล้ว

    как всегда мощно и лайк от СЕООНЛИ

  • @UserU-d2v
    @UserU-d2v ปีที่แล้ว

    Кто нажал дизлайк? Очень странные люди
    Материал очень годный. Все хорошо разложил, все понятно

  • @Vovan00275
    @Vovan00275 ปีที่แล้ว +1

    Спасибо, очень крутое пояснение!

  • @Drcn011
    @Drcn011 ปีที่แล้ว +2

    Я хз, как люди пишут, что им очень понравилось объяснение) Я практически вообще ничего не понял, и это при том, что уже как-то раз писал на бэке UseCors() с разрешающими политиками, чтобы подружить разные источники...

    • @ZeBrains
      @ZeBrains  ปีที่แล้ว

      Нам очень жаль, что доклад не помог Вам лучше разобраться с CORS. Из контекста комментария не совсем понятно, что именно понять не получилось. На некоторые из вопросов мы также ответили в комментариях к этому видео. Возможно, ответы к этим комментариям помогут Вам понять то, что не удалось понять из видео.

  • @АнтонВитальевич-т7к
    @АнтонВитальевич-т7к ปีที่แล้ว +1

    Столкнулся с ошибкой CORS, и никак не могу понять. Да, действительно, при отправке запроса из браузера, получаю ошибку, но если обращаюсь по той же ссылке из python скрипта, ошибок нет, получаю полноценный ответ. Так в чем защита тогда?

    • @ZeBrains
      @ZeBrains  ปีที่แล้ว +2

      Ошибка CORS (Cross-Origin Resource Sharing) возникает тогда, когда веб-страница, загруженная из одного домена, пытается отправить запрос на другой домен. Таким образом, ошибка CORS возникает из-за политики безопасности браузера, которая предотвращает выполнение запросов на другие домены. В Вашем случае использование Python позволяет обходить эту политику и выполнять запросы без ошибок, тк запросы отправляются не напрямую из браузера.

    • @couragic
      @couragic ปีที่แล้ว +1

      жаль этот момент не затронули в видео. Можно закрепить этот коммент.

  • @fightspace9822
    @fightspace9822 ปีที่แล้ว

    Добрый день. Спасибо за видео. Я сделал и все работает на локалхост, но перевел все на сервер и все перестало работать. Это проблема самого сервера ???

    • @ZeBrains
      @ZeBrains  ปีที่แล้ว +1

      Здравствуйте! Необходимо провести настройки на Вашем сервере для разрешения кросс-доменных запросов.

  • @ArteEtMarte
    @ArteEtMarte ปีที่แล้ว +1

    Никак не пойму по поводу CORS... каким образом сторонний сайт "от вашего имени" может отправить что то, если у него нет данных для аутентификации? Исходя из того, что у вас доступ есть, а у стороннего сайта нет, то механизм аутентификации точно есть... А если у злоумышленника есть данные для аутентификации, то что мешает ему подделать все прочие данные вообще не используя вас и браузеры в этой схеме? CORS выглядит как штука, которая почти не добавляет безопасности(если вообще добавляет), зато создает кучу проблем, особенно, людям, сталкивающимся с этим впервые...

    • @ZeBrains
      @ZeBrains  ปีที่แล้ว +4

      CORS- зона ответственности исключительно браузера. Именно через браузер рядовой пользователь взаимодействует с веб-приложением и именно в браузере пользователь может столкнуться с различными атаками, направленными на его конфиденциальные данные. Дополнительно можно почитать csplite.com/ru/csp291/ и csplite.com/ru/csp150/

    • @user-san-chous
      @user-san-chous ปีที่แล้ว +2

      @@ZeBrains вот этого в видео и не хватает. А то кажется, что сам сервер непосредственно блочит запрос.

    • @ZeBrains
      @ZeBrains  ปีที่แล้ว +3

      Спасибо за замечание. Хоть в конце видео и говорится о том, что это делает браузер, все же стоило об этом сказать более подробно и в начале. Постараемся учесть такие нюансы в наших будущих видео 😊

  • @KanstantsinSudzilouski
    @KanstantsinSudzilouski ปีที่แล้ว

    10:30 у https порт будет 443 а не 80

  • @HyperTextTransferProtocol-l6m
    @HyperTextTransferProtocol-l6m ปีที่แล้ว

    А должен ли сам сервер, перед тем как отдавать ответ, сверяться со своей CORS конфигурацией, и в случае чего возвращать пустой ответ со статусом 403?

    • @ZeBrains
      @ZeBrains  ปีที่แล้ว +1

      Да, сервер должен сверяться со своей CORS конфигурацией перед тем, как отдавать ответ. Если запрашиваемый источник не входит в список доверенных источников, сервер может вернуть пустой ответ со статусом 403, но может и не возвращать. Вообще 403 статус имеет отношение к запрещению доступа к ресурсу. Поэтому на 403 статус будет влиять скорее не CORS, а другие факторы.

  • @freenorthcaucasus
    @freenorthcaucasus ปีที่แล้ว

    К примеру у меня есть сайт и приложение как мне запретить пользоваться апишкой все ресурсы кроме моего сайта и приложения?

    • @ZeBrains
      @ZeBrains  ปีที่แล้ว +1

      Хороший вопрос, хоть и не относится к CORS. Совсем простого способа "закрыть" API полностью для всех, кроме Вашего сайта и приложения, нет. В любом случае придется делать обработку запроса. Подходы к защите могут сильно отличаться в зависимости от требований конкретного проекта. Где-то может хватить ограничения доступа только авторизованным пользователям, например, с помощью JWT. Где-то могут использоваться какие-то другие токены, подписи. Где-то в теле запроса могут передаваться различные объекты с наборами генерируемых данных, благодаря которым можно быть практически уверенными, откуда пришел запрос. На самом деле это тема для огромной дискуссии. В каждом конкретном случае подход может быть разным.

    • @Nik-h1y
      @Nik-h1y 11 หลายเดือนก่อน

      я у себя на сайте сделал white list. Только с разрешённых ip можно обратится к бэку

  • @mikewazowski7526
    @mikewazowski7526 ปีที่แล้ว +1

    В начале чувак плохо объясняет. Даже немного будучи в курсе темы все равно трудно понять из-за обилия избыточных абстрактных терминов: «у вас есть некий закрытый ресурс». Дайте пример. Скажите, что например я из своего приложения хочу сделать запрос в интернет-банкинг пользователя. Дайте больше жизни в свои пояснения.
    Потом все достаточно подробно, спасибо!

  • @VovanEkb
    @VovanEkb ปีที่แล้ว

    Ну можно же было Origin говорить а не источники, ну такая путаница потом в голове, как отступы блин в css которые не отступы нифига

    • @ZeBrains
      @ZeBrains  ปีที่แล้ว

      В переводе origin и есть источник. Даже CORS (Cross-Origin Resource Sharing) будет звучать как "совместное использование ресурсов разных источников". На ресурсах амазона (aws.amazon.com/ru/what-is/cross-origin-resource-sharing/) и яндекса (cloud.yandex.ru/docs/glossary/cors) придерживаются такого же перевода и называют origin источником.

  • @Петр-ч8л
    @Петр-ч8л ปีที่แล้ว

    Это сугубо браузерная хрень. На бэке такого не возникает

    • @ZeBrains
      @ZeBrains  ปีที่แล้ว

      Все верно 👍