VahidN/DNTIdentity

SecurityStampValidator Not Run

rbsdotnet opened this issue · 5 comments

سلام جناب نصیری

من از ساختار پروژه شما استفاده کردم اما وارد این بخش نمی شود
تمام روال ها رو بررسی کردم از تزریق وابستگی ها تا خود پیاده سازی کلاس ها دقیقا مثل شما هست
اما در پروژه خودم وارد این بخش نمی شود تا آخرین ورود کاربر رو ذخیره کند.
ممنون میشم راهنمایی کنید

مشکل برطرف شدبه خاطر یکی بود نام این کلاس با کلاس ساخته شده من در پروژه بود

@VahidN

سلام جناب نصیری باعرض پوزش بعد از تغییر نام مشکل برطرف شد. اما بعد از لاگ اوت و لاگین مجدد دیگر این وارد کلاس CustomSecurityStampValidator نشد. بعد از بررسی پروژه شما با هربار refresh وارد کلاس ApplicationClaimsPrincipalFactory می شود اما در پروژه من چنین اتفاقی رخ نمی دهد فقط بعد از اولین لاگین روی می دهد ممنون میشم راهنمایی کنید

تنظيم enableImmediateLogout را داريد؟

بله

private static void EnableImmediateLogout(this IServiceCollection services) { services.Configure<SecurityStampValidatorOptions>(options => { options.ValidationInterval = TimeSpan.Zero; options.OnRefreshingPrincipal = principalContext => Task.CompletedTask; }); }

من کلاس CookieAuthenticationEvents برای داشتن 2 لاگین مختلف به صورت custome نوشتم و تابع RedirectToLogin رو override کردم و در متد SetApplicationCookieOptions به صورت زیر استفاده کردم identityOptionsCookies.Events = new CustomCookieAuthenticationEvent(); وقتی فعال هست کار نمی کنه وقتی کامنت میکنم درست کار میکنه