Наша компания поддерживает соответствие PCI (наряду с некоторыми другими). В рамках нашего последнего аудита безопасности наша инфраструктурная команда и аудиторы определили, что заголовки OPTIONS должны быть полностью отключены, поскольку это создает угрозу безопасности.
Я согласен, что широкий блок всех ОПЦИЙ во всех доменах является допустимым значением безопасности по умолчанию, но они должны разрешать некоторые запросы ОПЦИИ на правильные серверы, поскольку это является частью спецификации HTTP.
Некоторые группы безопасности блокируют все запросы POST как стандартную практику, и вам необходимо запросить, какие запросы POST разрешены в сети.
Мы не можем сказать вам, если это хорошая политика или нет.
У меня вопрос: есть ли способ настроить заголовок OPTIONS, который позволит нам проходить сканирование безопасности и разрешать вызовы CORS из Angular?
Это стандартная проверка безопасности, выполняемая веб-браузерами при запросе к другому домену. Это то, что вы не можете изменить.
Вот список ваших вариантов на данный момент
- запросить, чтобы ОПЦИИ были разрешены для рассматриваемых веб-серверов. Сообщите команде безопасности, что серверы будут изменены, чтобы получить ответы ОПЦИИ, которые носят строгий характер и обеспечивают безопасность.
- разместить веб-приложение Angular в том же домене, чтобы браузер не делал запрос OPTIONS.
- изменить все вызовы API таким образом, чтобы API-запросы выполнялись только GET-запросы без тела (пустые GET-запросы освобождаются от предварительных запросов OPTIONS).
- создайте прокси API в том же домене, что и приложение Angular, и сделайте, чтобы прокси выполнял все вызовы API в другом домене (внутренние серверы не делают запросов OPTIONS).
Прежде чем приступить к выполнению любого из вышеперечисленных вопросов, проконсультируйтесь с вашей службой безопасности.