من پروژه م را با Asp.net Core 3.1 نوشتم
جداول من برای اعتبارسنجی تقریبا شبیه جداول آیدنتیتی است .
وقتی پس از لاگین، به صفحه اصلی وارد می شوم و روی منویی که بالای کنترلر آن
[Authorize(Policy = "Upper-Admin")]
را نوشته ام کلیک می نمایم من را به فرم لاگین مجدد هدایت میکند ، دوباره لاگین کرده و مجدد روی منو مربوطه کلیک می نمایم و مجدد به صفحه لاگین هدایت شده و این سیکل همچنان ادامه دارد .
جدول نقش من در این پایگاه داده: UserGroups
جدول دسترسی: UserKeys
جدول نقش و رابطه کاربر: UserGroupMembers
جدول روابط و نقش: UserGroupKeys
کدهای من در قسمت ConfigureServices
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
.AddCookie(options =>
{
options.Cookie.HttpOnly = true;
options.ExpireTimeSpan = TimeSpan.FromMinutes(30);
options.LoginPath = "/Account/Login";
options.AccessDeniedPath = "/Account/AccessDenied";
options.SlidingExpiration = true;
});
//Upper-Admin: UserGroups نقش تعریف شده در جدول
//add-Admin-User, Edit-Admin-User, Delete-Admin-User : دسترسی های تعریف شده در جدول UserGroupKeys
services.AddAuthorization(options =>
options.AddPolicy("Upper-Admin",
policy => policy.RequireClaim("add-Admin-User", "Edit-Admin-User", "Delete-Admin-User")));
services.AddControllersWithViews();
services.AddRazorPages();
کدها در قسمت Configure
app.UseHttpsRedirection();
app.UseDefaultFiles();
app.UseStaticFiles();
app.UseRouting();
app.UseAuthentication();
app.UseAuthorization();
در قسمت Configure و ConfigureServices فقط کدهای اصلی را نوشتم
شما نمیتونید از جداول اصلی Identity استفاده نکنید و بعد از کلاسها و دستورات Identity استفاده کنید. حتی اگر خودتون جداول رو مشابه با جداول آیدنتیتی درست کنید نمیشه چون خیلی تنظیمات و Config ها هست که شما وقتی از جداول Identity استفاده می کنید توی پروژه شما تنظیم میشه.
ضمنا وقتی شما همه جداول Identity رو مشابه با جداول اصلی درست کردید، از دستورات آیدنتیتی هم استفاده می کنید خب چرا از همون اول به صورت اصولی از آیدنتیتی استفاده نکردید ؟ به نظرم روش منطقی تر این هست که Identity خود Core استفاده کنید.
لینک زیر رو مطالعه کنید نحوه استفاده از آیدنتیتی هست.
تاریخ :
1403/12/01
- ساعت :
01:07:00 PM
- بازدید :
129
- پاسخ :
0
|
تاریخ :
1403/12/23
- ساعت :
11:21:00 AM
- بازدید :
81
- پاسخ :
1
|
تاریخ :
1399/09/20
- ساعت :
01:21:00 PM
- بازدید :
6778
- پاسخ :
1
|
تاریخ :
1403/12/22
- ساعت :
11:05:00 AM
- بازدید :
112
- پاسخ :
1
|
تاریخ :
1403/12/19
- ساعت :
11:21:00 PM
- بازدید :
36
- پاسخ :
1
|
تاریخ :
1403/12/18
- ساعت :
07:24:00 PM
- بازدید :
48
- پاسخ :
1
|
تاریخ :
1398/09/06
- ساعت :
09:06:00 PM
- بازدید :
3389
- پاسخ :
1
|
تاریخ :
1399/12/15
- ساعت :
08:08:00 PM
- بازدید :
3547
- پاسخ :
1
|
تاریخ :
1398/10/10
- ساعت :
10:52:00 AM
- بازدید :
2490
- پاسخ :
2
|
تاریخ :
1403/12/14
- ساعت :
02:53:00 PM
- بازدید :
61
- پاسخ :
1
|
تاریخ :
1403/12/23
- ساعت :
03:14:00 PM
- بازدید :
61
- پاسخ :
1
|
تاریخ :
1403/12/24
- ساعت :
06:18:00 PM
- بازدید :
14
- پاسخ :
0
|
تاریخ :
1403/12/01
- ساعت :
01:07:00 PM
- بازدید :
129
- پاسخ :
0
|
تاریخ :
1403/12/23
- ساعت :
11:21:00 AM
- بازدید :
81
- پاسخ :
1
|
تاریخ :
1399/09/20
- ساعت :
01:21:00 PM
- بازدید :
6778
- پاسخ :
1
|
تاریخ :
1401/03/31
- ساعت :
05:57:00 PM
- بازدید :
2307
- پاسخ :
1
|
تاریخ :
1403/12/22
- ساعت :
11:05:00 AM
- بازدید :
112
- پاسخ :
1
|
تاریخ :
1399/11/25
- ساعت :
11:22:00 AM
- بازدید :
3811
- پاسخ :
2
|
تاریخ :
1403/12/19
- ساعت :
11:21:00 PM
- بازدید :
36
- پاسخ :
1
|
تاریخ :
1403/12/20
- ساعت :
12:05:00 AM
- بازدید :
45
- پاسخ :
1
|