#c# #security #authentication #servicestack
#c# #Безопасность #аутентификация #servicestack
Вопрос:
Я расследую servicestack.net — но это примеры и статьи, похоже, не охватывают аутентификацию — это что-то обрабатывается servicestack.net — и если да, то как?
В частности, я заинтересован в реализации поддержки для:
- OAuth (таким образом, имея возможность проверять необработанный запрос и проверять его / извлекать соответствующую информацию о пользователе и связывать с запросом перед передачей его на servicestack.net для обработки).
- Аутентификация на основе сеанса / cookie (что позволяет использовать Ajax-клиенты, у которых уже есть действительный ASP.Сетевая сессия, чтобы использовать это для аутентификации, вместо необходимости явно передавать данные для входа и пароля, чтобы получить токен сеанса, подходящий для отправки с последующими запросами).
Не мог бы кто-нибудь указать мне в направлении документации / примеров, которые демонстрируют аутентификацию / безопасность при использовании ServiceStack.Net framework.
Комментарии:
1. Пошаговый пример использования Facebook Auth с ServiceStack можно найти здесь ( buildclassifieds.com/2016/01/14/facebookauth )
Ответ №1:
Редактировать: Теперь в ServiceStack существует новая модель поставщика аутентификации со следующими встроенными поставщиками:
- Учетные данные — Для аутентификации с использованием учетных данных имени пользователя / пароля. например, Form Auth
- Базовая аутентификация — позволяет пользователям проходить аутентификацию с помощью базовой аутентификации
- Twitter OAuth — Разрешить пользователям регистрироваться и проходить аутентификацию в Twitter
- Facebook OAuth — Разрешить пользователям регистрироваться и проходить аутентификацию в Facebook
Новая модель поставщика аутентификации полностью необязательна и представляет собой библиотеку пользовательского уровня, построенную поверх существующих фильтров запросов / ответов ServiceStack.
Для получения дополнительной информации о том, как создать свой собственный, проверьте параметры аутентификации в ServiceStack в этом потоке.
https://groups.google.com/d/topic/servicestack/U3XH9h7T4K0/discussion
В принципе, вы можете использовать фильтры запросов для перехвата запроса или базовый класс для добавления общей логики проверки. Поток содержит примеры обоих вариантов.
В качестве альтернативы вы можете разместить ServiceStack вместе с другим ASP.NET веб-платформа, позволяющая использовать встроенный поставщик аутентификации и просто проверять действительный сеанс пользователя в ServiceStack с помощью фильтров запросов и файлов cookie.
Вот пример реализации базовой аутентификации HTTP с фильтрами запросов