Вопрос по руководству: Dockerized Django backend и React front end Вопрос об аутентификации интранет-приложения

Это скорее вопрос руководства для ситуации, в которой мы застряли. В основном нам нужно развернуть приложение Intranet в сети клиента на базе Windows.

Наш API бэкенд написан на Django, который обслуживает фронтенд на основе React, на этапе автономной разработки мы использовали DRF - AuthUsers, Django Rest Framework и простые токены JWT, и развернули с помощью Linux Docker Images. Нам предстоит развернуть их в среде клиента, для чего мы должны внедрить Single Sign-On, аутентификацию Windows active directory. Идеальной целью является Kubernetes, но для первой попытки мы можем использовать обычные контейнеры Docker.

После некоторого исследования и получения информации от IT-департамента клиента, мы должны использовать докер-контейнер Apache2 Webserver, установить Kerberos config, keytab и развернуть в том же домене, что и Active Directory.

У нас есть несколько препятствий: 1) Должны ли мы создать 2 отдельных образа docker на базе Apache2, один для размещения Django backend, а другой для React frontend? 2) Где мы должны реализовать аутентификацию AD? Т.е. во фронтенде или в бэкенде? 3) Если необходимо внедрить аутентификацию AD, какие необходимые пакеты npm мы можем попробовать?

Большинство статей/блогов по этому сценарию ссылаются на MSAL.js, но наш AD находится на территории, а не в Azure. Мы используем Axios для вызова бэкенд-интерфейсов Django. Как нам получить доступ к информации о пользователе домена в React и как настроить поток аутентификации для первого входа и последующих запросов/ответов. Какая информация из ответа AD должна храниться в браузере клиента и передаваться во время запросов?

Если у кого-то есть похожая ситуация, опыт в этом контексте, пожалуйста, поделитесь своими соображениями, это будет огромная помощь.

Большое спасибо.

Вернуться на верх