Мое приложение имеет iframe. В этом iframe отображаются сторонние приложения. Эти приложения должны аутентифицировать наших пользователей, поэтому - если у них нет id_token - они инициируют поток аутентификации внутри iframe.
Наш IdentityServer сконфигурирован с CSP, чтобы разрешить его встраивание только в наш домен.
В этом случае у нас есть стороннее приложение, которое работает с совершенно другим источником. Приложение загружается в наш iframe, и пользователь, пытающийся открыть его, не аутентифицирован в своем приложении. Они инициируют поток авторизации к нашему ID-серверу. В зависимости от запрошенных областей мы получаем два разных результата:
- если они запрашивают только область действия openid и профиля, перенаправление работает хорошо
- если они запрашивают дополнительные области, перенаправление блокируется, поскольку ID-сервер устанавливает заголовок X-Frame-Origin со значением "sameorigin"
Я не вижу разницы между этими двумя запросами с точки зрения безопасности. Повторяю, единственная разница - это запрашиваемые области.
Спасибо