Допустим, у frontend есть домен frontend.example.com и бэкэнд-домен backend.example.com. (Если вы что-то вроде Django, рамки для отдыха)
Если вы можете использовать это двумя способами, вы можете включить уровень безопасности, т.е. CSRF Защита или CORS
Для CORS,
pip install django-cors-headers
, а затем настройте его на INSTALLED_APPS, MIDDLEWARE_CLASSES и добавьте домен внешнего интерфейса в CORS_ORIGIN_WHITELIST.
CORS_ORIGIN_WHITELIST = (
'frontend.example.com'
)
CORS заблокирует любой http-запрос, возникающий из любых доменов, кроме frontend.example.com
Для CSRF,
CSRF_COOKIE_DOMAIN = ".mydomain.com"
и если вы используете Angular App, сделайте, как показано ниже,
$httpProvider.defaults.xsrfCookieName = 'csrftoken';
$httpProvider.defaults.xsrfHeaderName = 'X-CSRFToken';
$httpProvider.defaults.withCredentials = true;
, а затем добавьте заголовки при выполнении запроса http.
headers : {
"x-csrftoken" : $cookies.csrftoken
}