Что такое CORS защита и когда она нужна?
Ответ от нейросети
sobes.tech AI
CORS (Cross-Origin Resource Sharing) — это механизм безопасности браузера, который ограничивает выполнение веб-страницами запросов к ресурсам, находящимся на другом домене (происхождении).
Без CORS браузер блокирует такие запросы, чтобы предотвратить атаки типа Cross-Site Request Forgery (CSRF) и другие угрозы, связанные с междоменных взаимодействиями.
CORS защита нужна, когда:
- Веб-приложение на одном домене (например,
https://app.example.com) обращается к API на другом домене (https://api.example.com). - Нужно контролировать, какие внешние сайты могут обращаться к вашему API.
Сервер должен явно разрешить такие запросы, отправляя специальные HTTP-заголовки, например Access-Control-Allow-Origin.
Пример заголовка, разрешающего доступ с любого домена:
Access-Control-Allow-Origin: *
Или более безопасно — указать конкретный домен:
Access-Control-Allow-Origin: https://app.example.com
В Java-приложениях CORS можно настроить через фильтры или аннотации, например, с использованием Spring Framework:
@CrossOrigin(origins = "https://app.example.com")
@RestController
public class ApiController {
// методы контроллера
}
Таким образом, CORS — это важный механизм для безопасного взаимодействия между клиентом и сервером в условиях разных доменов.