نحوه کنترل لاگین بودن کاربر در Asp.net Core در View به چه صورتی هست ؟ پروژه با Asp.net Core هست
برای کنترل لاگین بودن کاربر در Asp.net Core امکانات و متدهای بسیار خوبی در Identity تعبیه شده که می تونید از اونها استفاده کنید.
خب شما میتونید با استفاده از attribute یا ویژگی Authorize مانع از دسترسی کاربر به اکشن ها یا کنترلرهای خودتون بشید و از مطمئن بشید که تنها کاربرانی میتونن از امکانات سایت استفاده کنن که حتما Login کردن یا به عبارتی احراز هویت شدن.
[Authorize]
public class UserController : Controller
{
//Action methods
}
public class DocumentsController : Controller
{
public ActionResult ViewDocument()
{
//Your code here
}
[Authorize]
public ActionResult DeleteAllDocuments()
{
//Your code here
}
}
در مثال بالا دسترسی به کنترلر Document و اکشن ViewDocument نیازی به احراز هویت نداره ولی برای دسترسی به اکشن DeleteAllDocument کاربر باید حتما لاگین کرده باشه.
خب در ادامه ممکن است گاهی نیاز داشته باشیم که مثلا در یک View کنترل کنیم که آیا کاربر لاگین کرده یا نه. یا مثلا اگر کاربر لاگین نکرده بود برخی از منوهای سایت را به او نمایش نمی دهیم و یا حتی گاهی برای اطمینان بیشتر قصد داریم مجدد قبل از انجام عملیات مهم کنترل کنیم که کاربر حتما Login باشد. در این موارد میتوانیم از متد IsAuthenticate که یکی از متدهای Identity می باشد استفاده کنیم. از این متد هم در View و هم در Controller میتوان استفاده کرد.
خب در اینجا یک مثال از استفاده متد IsAuthenticate در View با هم میبینیم. به عنوان مثال اگر کاربر لاگین نکرده بود منوی "دوره های من" را مشاهده نکند.
<ul>
@if (User.Identity.IsAuthenticated)
{
<li>
<a href="#">دوره های من</a>
</li>
}
<li>
<a href="#">آموزشهای سایت</a>
</li>
<li>
<a href="#">اخبار سایت</a>
</li>
</ul>
خب همونطوری که میبینید بااستفاده از دستور زیر به راحتی میتونیم کنترل کنیم که آیا کاربر لاگین کرده یا نه.
User.Identity.IsAuthenticated
دقیقا از همین دستور میتونیم توی Controller هم استفاده کنیم و کنترل کنیم که آیا کاربر لاگین انجام داده یا نه. در مورد احراز هویت کاربران لینک زیر رو مطالعه بفرمایید.
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
78
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
109
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1034
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
430
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1356
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4800
- پاسخ :
1
|
تاریخ :
1403/07/27
- ساعت :
03:21:00 PM
- بازدید :
215
- پاسخ :
1
|
تاریخ :
1403/07/26
- ساعت :
09:00:00 PM
- بازدید :
117
- پاسخ :
0
|
تاریخ :
1403/05/16
- ساعت :
09:57:00 AM
- بازدید :
397
- پاسخ :
2
|
تاریخ :
1403/06/25
- ساعت :
11:39:00 PM
- بازدید :
568
- پاسخ :
1
|
تاریخ :
1401/02/24
- ساعت :
02:17:00 PM
- بازدید :
2013
- پاسخ :
1
|
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
78
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
109
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1034
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
430
- پاسخ :
1
|
تاریخ :
1402/08/01
- ساعت :
06:25:00 PM
- بازدید :
931
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1356
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4800
- پاسخ :
1
|
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1161
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
598
- پاسخ :
1
|