Я работаю над одним веб -приложением (React) и бэкэнд API в .net 8 Изолированные модель. Бэкэнд в настоящее время развернут в Azure с Kubernetes. Планируя реализовать обработку разрешений, как ниже. Этот токен передается в бэкэнд API для получения соответствующих разрешений для пользователя (эта конечная точка API авторизована. Плюс API Gateway выполнит Aginst Azure Ad перед отправкой запроса в API и вставит роли внутри токена как Заголовок в запросе перед переходом в API). < /p>
Планируется поддерживать картирование ролевой промежутки в бэкэнд внутри хранилища таблиц, где картирование ролевой промежутки будет получено при запуске приложения и сохраняется внутри. кэш в памяти (примечание: в настоящее время не требуется создавать сложную логику для обработки аутентификации или авторизации. Картование ролевой промежутки не часто обновляется, и существует только ограниченное количество разрешений, которые можно использовать без использования без Собираясь к распределенному кешу, такому как Redis). На основании возвращенного списка разрешений для пользователя, фронт-End будет отображать пользовательский интерфейс. Запрос входит в конечную точку, планируя проверить, имеет ли конкретный пользователь конкретное разрешение на выполнение операции. 40 пользователей одновременно. Это внутренняя приложение, используемое только сотрудниками компании. Таким образом, производительность не является большим соображением, а также пропускная способность также не будет такой высокой. ) Большинство из этих существующих HTTP -триггеров переставят запрос в другой домен, конкретный API внутреннего бэкэнда для выполнения операции.
Проблема
должен использовать веб-API .net или продолжить с помощью функций Azure с учетом следования вещей < /p>
- Встроенные функции аутентификации и авторизации предоставлены С помощью веб-API < /li>
Повышение производительности < /li>
Встроенные оптимизации < /li>
Время для преобразования существующей функции Триггеры до веб -API
Поскольку я исследовал оба подхода (Web API или функции Azure), потребуется пользовательская логика авторизации в промежуточном программном обеспечении, чтобы проверить разрешение на основе моего картирования ролевой выполнения перед тем, как пересылать запрос в конечную точку, поскольку Web API не поддерживает проверку с деталями За исключением ролей/пользователей и наличия пользовательских политик авторизации. Всегда готовые стручки) Это не должно быть проблемой для моего варианта использования, поскольку производительность не так критическая.
Подробнее здесь: https://stackoverflow.com/questions/794 ... et-web-api
Мобильная версия