4

В настоящее время у нас есть типичная настройка аутентификации форм в нашей организации; с учетной записью, расположенной на том, что называется учетной записью/логином. Мы хотим сохранить это, но также хотим начать защиту некоторых наших API с помощью OAUTH2; по сути, мы являемся поставщиком.Сохранение формы аутентификации с помощью IdentityServer3

Отчитываясь об объекте, реализация Microsoft OWIN OAUTH, продвигающаяся вперед, не поддерживается (например, vNext) и не поддерживает все потоки с помощью OAUTH2. Identityerver3 Thinktecture, похоже, является «стандартным» и наиболее полным решением, которое существует в настоящее время.

Я не могу найти пример использования identityserver3 с существующим приложением, которое требует проверки подлинности на основе форм.

Мы будем использовать его двумя способами; один из которых использует неявный поток, используя javascript, где мы разрешаем стороннему сайту вызывать наш API, как только пользователь выполнил вход в систему (используя auth), и пользователь разрешил клиенту получать доступ к определенным областям.

Другой вариант использования, я думаю, будет использовать поток кода авторизации; клиент будет запрашивать это, чтобы он мог автоматически вводить логин (так же, как логин с Facebook, но входить в систему с компанией X) или быть уже зарегистрированным, если он зарегистрирован на нашем сайте.

Любая помощь в этих сценариях будет оценена по достоинству.

+0

Вы уже реализовали и начали работать с Identity Server? Я пытаюсь сделать то же самое, что и вы, за исключением того, что я хочу, чтобы Identity Server предоставлял проверку подлинности форм для мобильного приложения. – cloudstrifebro

ответ

1

Я думаю, что вы не сможете переключить свое приложение на OAuth без изменения существующего входа. Я бы предложил использовать сервер Identity с пользовательским хранилищем (https://identityserver.github.io/Documentation/docsv2/advanced/userService.html) для использования вашей текущей базы данных пользователей. Таким образом, существующие учетные записи будут использоваться сервером идентификации.

Затем вы можете защитить свои API от OAuth с помощью сервера Identity. Возможно, вам придется изменить способ, которым ваше текущее приложение также вызывает API. Это означает, что пользователи текущего приложения будут перенаправлены на страницу входа сервера идентификации. Вы можете создавать свои логин-страницы с помощью пользовательских представлений, чтобы они выглядели похожими на страницу текущего входа (https://identityserver.github.io/Documentation/docsv2/advanced/customizingViews.html)

+0

Нам по-прежнему нужно хранить файл cookie на основе cookie для нашего сайта –