Мне нужна помощь в решении моей проблемы.
Я хочу достичь
http: //abc.contoso.com -> https: //abc.contoso.com (принудительное перенаправление HTTP на HTTPS)
Моя проблема в том, что URI, необходимый для конечной точки авторизации Azure OAuth 2.0, не соответствует.
Принятый URI в качестве пункта назначения при возврате ответов аутентификации (токенов) после успешной аутентификации пользователей должен быть: https://abc.contoso.com/signin-oidc
Но HAProxy отправляет HTTP-форму, как показано ниже:
https://login.microsoftonline.com/bdeebc-dd/oauth2/authorize?client_id=fd&redirect_uri = http% 3A% 2F% 2Fabc.contoso.com% 2Fsignin-oidc& response_type = id_token & scope = профиль openid & response_mode = form_post
Что мне делать, чтобы использовать форму HTTPS (redirect_uri = https% 3A% 2F% 2Fabc.contoso.com% 2Fsignin-oidc) вместо HTTP для OAuth?
Моя конфигурация
Внешний интерфейс
интерфейс public_front_end
привязка *: 80
режим http
вариант вперед
схема перенаправления https код 301 if! {ssl_fc}интерфейс public_secured_front_end
привязка *: 443 ssl crt / etc / haproxy / certs
Бэкэнд
use_backend abc-api, если {hdr (хост) -i abc.contoso.com}
бэкэнд abc-api
режим http
HTTP-запрос добавить заголовок X-Forwarded-Proto https
server webserver01 192.168.0.1:4569 проверить
вариант вперед
Спасибо
Вам необходимо обновить приложение Azure AD, которое вы настроили для этой проверки подлинности, чтобы добавить URL-адрес ответа для конечной точки https.