Я создал веб-приложение на основе Node.js, работающее в веб-приложении Azure, которое я хотел поставить за аутентификацией Azure Active Directory. После активации «Аутентификация службы приложений» процесс входа в систему работает нормально, однако по возвращении в мое приложение он просто возвращает HTTP 431 «Слишком большие поля заголовка запроса».
Чтобы проверить, что это не мое приложение, я проверил Azure образец веб-приложения для Node.js, и даже при активации AAD возвращается значение 431.
Шаги для воспроизведения:
- Создание нового Azure resource -> Web App
- Выберите любой стек времени выполнения на основе Node, например Node 12 LTS
- Выберите любую ОС
- Создайте веб-приложение и дождитесь завершения развертывания до sh
- Создание простого веб-приложения
- В настройках веб-приложения go для «Аутентификация / Авторизация»
- Включите «Аутентификация службы приложения» в «Вкл»
- Выберите Azure Active Directory
- Выберите Express Режим управления и создайте новый Azure AD приложение в процессе
- Как «Действие, которое необходимо выполнить, если запрос не аутентифицирован», выберите «Войти с помощью Azure AD»
- Подтвердить
Результат: при открытии URL-адреса веб-приложения в браузере будет отображаться процесс входа в систему, после чего все будет работать нормально, и AAD возвращается в приложение, однако в этот момент он возвращает HTTP 431.
Дальнейшие тесты:
- Отключите аутентификацию и все снова работает нормально
- Вместо этого загрузите простой файл. html Node-приложения работает нормально с включенной аутентификацией
- Протестировано с restify и http
Есть идеи? Я что-то упустил?