SecurityStampValidator Not Run
rbsdotnet opened this issue · 5 comments
rbsdotnet commented
سلام جناب نصیری
من از ساختار پروژه شما استفاده کردم اما وارد این بخش نمی شود
تمام روال ها رو بررسی کردم از تزریق وابستگی ها تا خود پیاده سازی کلاس ها دقیقا مثل شما هست
اما در پروژه خودم وارد این بخش نمی شود تا آخرین ورود کاربر رو ذخیره کند.
ممنون میشم راهنمایی کنید
rbsdotnet commented
مشکل برطرف شدبه خاطر یکی بود نام این کلاس با کلاس ساخته شده من در پروژه بود
rbsdotnet commented
سلام جناب نصیری
باعرض پوزش
بعد از تغییر نام مشکل برطرف شد. اما بعد از لاگ اوت و لاگین مجدد دیگر این وارد کلاس CustomSecurityStampValidator نشد.
بعد از بررسی پروژه شما با هربار refresh وارد کلاس ApplicationClaimsPrincipalFactory می شود اما در پروژه من چنین اتفاقی رخ نمی دهد فقط بعد از اولین لاگین روی می دهد
ممنون میشم راهنمایی کنید
VahidN commented
تنظيم enableImmediateLogout را داريد؟
rbsdotnet commented
بله
private static void EnableImmediateLogout(this IServiceCollection services) { services.Configure<SecurityStampValidatorOptions>(options => { options.ValidationInterval = TimeSpan.Zero; options.OnRefreshingPrincipal = principalContext => Task.CompletedTask; }); }
rbsdotnet commented
من کلاس CookieAuthenticationEvents برای داشتن 2 لاگین مختلف به صورت custome نوشتم و تابع
RedirectToLogin
رو override کردم
و در متد SetApplicationCookieOptions به صورت زیر استفاده کردم
identityOptionsCookies.Events = new CustomCookieAuthenticationEvent();
وقتی فعال هست کار نمی کنه وقتی کامنت میکنم درست کار میکنه