У меня есть 3 веб-сайта ASP.NET MVC, работающие с Entity Framework на SQL-сервере. Каждый сайт работает как независимое приложение с независимыми базами данных. Я хочу, чтобы бизнес-клиенты могли создавать «Паспорта», а также токены, которые позволяют им входить в один сайт, одновременно регистрируя их на других сайтах. Чтобы войти на сайт, паспорт должен иметь действительную «визу», выдаваемую через систему Passport, паспорта могут управляться с помощью диспетчера сайтов Passport, который может использоваться администраторами для доступа к информации учетной записи пользователя с веб-сайтов A, B, и C и делайте админ. В каком-то смысле паспорт можно рассматривать как имеющее индивидуальную переписку с реальной личностью людей.Многопользовательский логин с одним «паспортом»
Вот мои вопросы, как я могу передать пользователю попытку входа с сайта A, чтобы проверить его с базой данных паспорта и возвращать результат к вебсайту? Как мне скрывать это общение? Другими словами, чтобы только приложения веб-сайта A, B, C могли проверить попытку входа в базу данных паспорта? Должно ли быть другое приложение, которое предоставляет этот интерфейс? Будет ли это веб-API ASP.NET?
Вторая часть моего вопроса, когда пользователь регистрируется на сайте A, им не нужно повторно указывать свои учетные данные, чтобы попасть на сайты B и C. Вместо этого при входе на сайт A они создают сеансы с сайтами B и C , или создать ключ, который может разрешать сеансы с сайтами B и C. Как бы выглядел этот процесс?
Я не ищу полного решения, но если вы можете указать мне на пример, к документации по технологиям/библиотекам/объектам, которые я сочтет полезными.