لاگین کردن در یک سایت و وارد شدن در سایتی دیگر
نویسنده: سینا شهرکی
تاریخ: ۱۳۹۳/۱۲/۱۶ ۱۹:۱۰
آدرس: www.dntips.ir
| مطالب | ۳۶۹۴ |
| نویسندگان | ۲۷۶ |
| گروههای مطالب | ۱۰۲۴ |
| نقشههای راه | ۱۱۹ |
| دورهها | ۱۴ |
| اشتراکها | ۱۷۹۱۴ |
زمانی که برای احراز هویت از ASP.NET Identity استفاده میکنید، ممکن است برای شما هم پیش آمده باشد که اگر در یکی از سایتهای خود لاگین کرده باشید و سایتی دیگر را که از ASP.NET Identity استفاده میکند، باز کنید بدون اینکه لازم باشد دوباره لاگین کنید، با همان نام کاربری سایت اول در سایت دوم هم وارد شده اید (بر روی یک دومین یا هاست شدهی در یک سیستم). برای نمونه میتوانید دو برنامه asp.net mvc ایجاد کنید، سپس یکی را اجرا کنید و پس از ثبت نام در آن و لاگین کردن، برنامه دوم را اجرا کنید، احتمالا مشاهده میکنید که به صورت خودکار وارد شدهاید.
دلیل و راه حل آن ساده است، AspNet.ApplicationCookie در هر دوسایت هم نام است، آن را تغییر دهید:
public partial class Startup
{
// For more information on configuring authentication, please visit http://go.microsoft.com/fwlink/?LinkId=301864
public void ConfigureAuth(IAppBuilder app)
{
// Enable the application to use a cookie to store information for the signed in user
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
LoginPath = new PathString("/Account/Login"),
CookieName = "MyCookieName",
});
}
}