У меня есть приложение, которое находится за WAF (брандмауэром веб-приложений).
Приложение использует Microsoft Active Directory для аутентификации.
Вот шаги
Теперь вопрос,
Вам не нужно разговаривать с AAD в вашем бэкэнде. Просто подтвердите токен безопасности Azure AD, следуя этому ответу.
@AllenWu Означает ли это, что нам нужно исходящее подключение к Интернету из приложения?
Это зависит от того, какой поток авторизации вы используете.
Для потока кода авторизации вашему приложению потребуется обратиться к AAD, чтобы выкупить код аутентификации для токена доступа и токена обновления по обратному каналу. Итак, вам нужно разрешить подключение к AAD (login.microsoftonline.com).
Для Неявного потока предоставления это браузер, который напрямую получает токен доступа от AAD через передний канал. Таким образом, в этом случае вам не понадобится белый список в бэкэнде WAF.
Я решил проблему, используя функцию service tag
в NSG. Серверное приложение должно иметь доступ к AAD, чтобы проверить маркер доступа.
Я добавил исходящее правило с пунктом назначения Service Tag Azure Active Directory
, как показано ниже.
Вот ссылка: https://learn.microsoft.com/en-us/azure/virtual-network/service-tags-overview
нет концепции проверки AAD, все, что вы должны сделать, - поделиться ключом шифрования, который используется у поставщика токенов, который будет использоваться в обработчике токенов для проверки действительности токена (расшифровки), также вы читаете любые утверждения, прикрепленные к разрешению на основе роли пользователя.