3

Я работаю на сайте MVC4 с помощью SimpleMembership для обработки учетных записей пользователей и проверки подлинности на основе ролей. У нас есть еще один сайт, и мы хотели бы внедрить единый знак в системе, позволяющий пользователям существующего сайта войти в тот, который я создаю. Какой был бы лучший способ достичь этого и, надеюсь, использовать существующие авторизации на основе роли, которую я использую на сайте MVC4. Возможно ли иметь несколько поставщиков членства (т. Е. Использовать встроенный в один, а если пользователь не найден, попытаться выполнить аутентификацию через настраиваемый поставщик, который я напишу (как только я выработаю, как!). Или было бы лучше отказаться от встроенного членства/ролей и перевернуть мой собственный?MVC4 Простая аутентификация членства с несколькими базами данных или поставщиками

Я также подумал о том, чтобы позволить WebSecurity проверять локальную базу данных, и если пользователь не найден, запросите вторую базу данных и если учетные данные пользователей действительны, создайте локальную учетную запись для них. Одна из проблем с этим подходом заключается в том, что если пользователь, называемый Fred, регистрируется на сайте MVC, а затем пользователь с другого сайта, который называется Fred, мы не смогли создать им локальную учетную запись с тем же именем пользователя./суффикс имени пользователя с некоторым текстом, чтобы указать, что они находятся на другом сайте, но затем мы потеряем функцию единого входа.

Мы также хотим интегрировать аутентификацию AD для сотрудников в будущем.

По существу, я ищу лучший способ аутентификации пользователей из нескольких баз данных и продолжать использовать проверку подлинности на основе ролей.

Я также немного поработал, задаваясь вопросом, может ли ADFS быть полезным для этого.

Любая помощь или совет были бы очень признательны!

+0

Я столкнулся с той же проблемой. Я думаю, что аутентификация AD должна выполняться в IIS, см. Здесь http://msdn.microsoft.com/en-us/library/ms972958.aspx И вам нужно переопределить метод входа, чтобы он мог вызвать первую базу данных, затем второй. –

+0

Спасибо, определенно, полезная информация там –

+0

Эти две ссылки могут помочь вам: http://www.codeproject.com/Articles/429166/Basics-of-Single-Sign-on-SSO и http: //garymcallisteronline.blogspot. ком/2013/01/САШИ-MVC-4-ADFS-20-и-третьи стороны-sts.html –

ответ

1

Я рекомендую использовать Identity server для обработки всех ваших запросов на вход и переключения на claim based authentication вместо role based authentication, если можно.

Я лично пошел с Thinktecture IdentityServer

pluralsight.com имеют хороший ход на нем.

Thinktecture IdentityServer построен на вершине простого членства и поддерживает множественный протокол, например

  1. WS-Federation
  2. WS-Trust
  3. OpenID Connect
  4. OAuth2
  5. ADFS Интеграция
  6. Простой HTTP

Я рекомендую проверить его

УДАЧИ

Смежные вопросы