Email or username:

Password:

Forgot your password?
Андрей Ситник

О чём нужно подумать создавая HTTP-прокси для обхода CORS?

Для RSS-читалки нужно сделать такой, чтобы грузить RSS из браузера (local-first).

Авторизация сделать нельзя, чтобы мы не могли сделать, что человек читает.

github.com/hplush/slowreader/p

Что уже сделали:

1. Проверяем, что запросы приходят (Origin) из нашего домена
2. Не даём запрашивать внутренние IP-адресы (типа 192.268.x.x), чтобы не смотрели хостинг изнутри
3. Удаляем заголовки кук
4. Позволяем только GET
5. Протокол только https/http

1 comment
iliazeus

@sitnik_ru

Добавить рейт-лимиты.

Не позволять рекурсивные запросы на сам прокси.

Подумать, как обрабатывать 3xx статусы - если их просто проксировать, они будут редиректить клиента мимо прокси.

Давать понять, что запрос пришел через прокси - что-то вроде x-forwarded-for, плюс возможно ещё какой-то хедер, с контактными название прокси и контактным email - то есть, что-то вроде user-agent, но для самого прокси.

Если для URL нет запрещающих cors (можно проверить head-запросом), то можно вернуть просто редирект на этот url, а не проксировать через себя весь ответ.

@sitnik_ru

Добавить рейт-лимиты.

Не позволять рекурсивные запросы на сам прокси.

Подумать, как обрабатывать 3xx статусы - если их просто проксировать, они будут редиректить клиента мимо прокси.

Давать понять, что запрос пришел через прокси - что-то вроде x-forwarded-for, плюс возможно ещё какой-то хедер, с контактными название прокси и контактным email - то есть, что-то вроде user-agent, но для самого прокси.

Go Up