کوکی هم که دیگه خیلی افتضاح بود. شما کد کاربری و نام و.. رو توی کوکی ذخیره کردید. من فقط کد کاربری رو عوض کردم، کلا کاربر توی سایت عوض شد!!! این اطلاعات باید توی سشن باشه و طوری باشه که اگه کسی session hijacking کرد هم نتونه دسترسیش رو عوض کنه!
یکی از دوستان این پیام برام ارسال کرده منظورش چیه؟
چه چور میشه این مشکل برطرف کرد؟
مگه چظور لاگین کردید ؟
مگه از identity استفاده نکردید ؟
اگر خودتون کوکی ست کردید باید امنیت رو تضمین کنید
بهتره از identiity استفاده کنید
TextBox userNameTextBox = (TextBox)((System.Web.UI.WebControls.Button)sender).NamingContainer.FindControl("UserNameTextBox"); TextBox PasswordTextBox = (TextBox)((System.Web.UI.WebControls.Button)sender).NamingContainer.FindControl("PasswordTextBox"); string username = txtuser.Value.Trim(); string pass_user = FormsAuthentication.HashPasswordForStoringInConfigFile(txtpassword.Value.Trim(), "SHA1"); string Roul="Admin".Trim(); DAL.user user = DAL.user.Select_user(username, pass_user, Roul); if (user != null) { if (chkrobb.Checked) { HttpCookie cook = new HttpCookie("UserInfo"); string id = user.ID_user.ToString(); cook["id_user"] = Convert.ToString(user.ID_user); cook["nameuser"] = user.name_user; cook["nameaccess"] = user.username_user; Session["rot"] = "ناحیه کاربری"; cook.Expires = DateTime.Now.AddDays(1d); Response.Cookies.Add(cook); FormsAuthentication.RedirectFromLoginPage(user.username, false); Response.Redirect("~/Cr-Admin/page/Default.aspx"); }
بدترین کار ممکن را کردید
از همون Identity استفاده کنید
اقای مدائنی حالا کاربر رو از طریق identity لوگین میکنم حالا چه چور میشه اطلاعت کاربر لوگین شده به دست بیارم؟
کسی جواب نمیده؟
چه چور میشه ایدی کاربر به دست بیارم؟
var user = UserManager.FindById(User.Identity.GetUserId());
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)