Постановка проблемы У меня запущено несколько приложений, и потенциальные пользователи одинаковы для обоих приложений, поэтому сейчас им нужно зарегистрироваться в обоих приложениях по отдельности и создать пароль для обоих.
Если кто-то забыл пароль или кто-то хочет сбросить его / ее пароль, он должен выполнить действие в обоих приложениях.
Что я хочу?
Я хочу создать другую базу данных для аутентификации и хочу использовать эту базу данных для обоих приложений во время аутентификации пользователя.
Возможно ли использовать тот же подход? Я использую Entity Framework, как я могу использовать, чтобы открыть соединение с другой базой данных (Центральной БД).Есть ли какой-нибудь учебник или ссылка, которая может мне помочь?Какой должен быть лучший подход для реализации этого?
Мой текущий код
public ActionResult Login(Login login)
{
var result = user.FindUser(login.Email);
if (result==null)
{
ViewData["Con"] = "IncorrectEmail";
ViewBag.data = "login";
return View();
}
if(result.Password==null || result.ConfirmPassword==null)
{
ViewData["Con"] = "PasswordNull";
ViewBag.data = "login";
return View();
}
var deptName = deptRepos.SelectByID(result.DepartmentID);
var role = (roleRep.SelectByID(result.RoleID).RoleType).ToUpper();
string pass = user.Decrypt(result.Password);
if (login.Password.ToLower().Trim() != pass || login.Password==null)
{
ViewData["Con"] = "IncorrectPassword";
ViewBag.data = "login";
return View();
}
//System.Web.HttpContext.Current.Session["UserName"] = result.Name;
System.Web.HttpContext.Current.Session["Email"] = login.Email;
System.Web.HttpContext.Current.Session["Password"] = login.Password;
System.Web.HttpContext.Current.Session["Department"] = deptName.Name;
System.Web.HttpContext.Current.Session["DepartmentID"] = deptName.ID;
System.Web.HttpContext.Current.Session["Designation"] = result.Designation;
System.Web.HttpContext.Current.Session["Role"] = role;
Это моя веб-конфигурация
<connectionStrings>
<add name="EmailConfiguration" connectionString="data source=.; initial catalog=EmailConfiguration;persist security info=True; MultipleActiveResultSets=true; Integrated Security=SSPI;" providerName="System.Data.SqlClient" />
Это текущий сценарий с одной БД.