packages.zip
حجم:
3.6M
پکیج برای پروژه های قبلی
نسخه 8.0.24
سلام به همه همراهان کانال! 👋 امروز میخوایم خیلی ساده و خودمونی ببینیم این Identity (آیدنتیتی) که توی دنیای ASP.NET Core اینقدر ازش حرف میزنن چیه و به چه دردی میخوره؟ 🤔✨
🛡️ سیستم Identity چیه؟ (به زونی ساده)
تصور کنید یه مجتمع مسکونی بزرگ دارید. برای اینکه امنیت این ساختمون حفظ بشه، شما به یه سیستم مدیریت احتیاج دارید که بدونه:
کی ساکن اینجاست؟ (ثبتنام) 📝
چطوری وارد بشه؟ (ورود/لاگین) 🔑
کی اجازه داره بره توی استخر یا پشتبام؟ (سطح دسترسی) 🚫
اگه کلیدش رو گم کرد چیکار کنه؟ (فراموشی رمز عبور) 🆘
Identity
در واقع همین «تیم نگهبانی و مدیریت» آمادهست که مایکروسافت به شما میده تا مجبور نباشید خودتون از صفر برای سایتتون نگهبان استخدام کنید! 😎
🧩 اجزای اصلی این سیستم (با مثالهای ملموس):
👤 کاربر (User):
مثل همون ساکن مجتمع. اطلاعاتی مثل ایمیل، شماره تلفن و رمز عبور داره.
مثال: علی با ایمیلش ثبتنام میکنه.
🔐 مدیر کاربران (UserManager):
مثل مسئول پذیرش که لیست همه ساکنین دستشه. اون چک میکنه که رمز عبور درست باشه یا یوزر جدید بسازه.
مثال: وقتی میخواید رمزتون رو عوض کنید، سراغ این بخش میرید.
👥 نقشها (Roles):
مثل دستهبندی افراد. مثلاً: «مدیر ساختمان»، «ساکن معمولی»، «واحد نگهبانی».
مثال: فقط کسی که نقش "Admin" داره میتونه تنظیمات کل سایت رو تغییر بده.
👮 مدیر ورود (SignInManager):
مثل نگهبان دم در. چک میکنه ببینه شما همونی هستید که ادعا میکنید؟ اگه بله، اجازه ورود میده (براتون کوکی یا توکن صادر میکنه).
مثال: وقتی تیک "مرا به خاطر بسپار" رو میزنید، این بخش مسئولشه.
✨ چرا باید از Identity استفاده کنیم؟
✅ امنیت فوقالعاده: رمزهای عبور شما رو به صورت رمزی (Hash) ذخیره میکنه که حتی اگه هکر به دیتابیس دسترسی پیدا کرد، نتونه رمزها رو بفهمه! 🔒
✅ تایید دو مرحلهای (2FA): همون اساماس یا کدی که به گوشی میاد تا مطمئن بشن خودتونید. 📱
✅ ورود با گوگل و...: اجازه میده کاربر خیلی راحت با اکانت گوگل یا فیسبوکش وارد سایت بشه. 🌐
✅ قفل شدن خودکار: اگه کسی چند بار رمز رو اشتباه بزنه، برای امنیت بیشتر حسابش رو موقتاً میبنده. ❌
💡 یه مثال کاربردی در سایت:
فرض کنید یه سایت فروشگاهی دارید:
مشتری: فقط میتونه محصولات رو ببینه و بخره. (Role: Customer) 🛒
انباردار: میتونه تعداد موجودی کالاها رو زیاد و کم کنه. (Role: Inventory) 📦
مدیر کل: میتونه قیمتها رو تغییر بده یا کارمند جدید استخدام کنه. (Role: Admin) 👑
Identity
به شما کمک میکنه با یه دستور ساده، جلوی ورود «مشتری» به بخش «انبار» یا «مدیریت» رو بگیرید!
🚀 نتیجهگیری:
استفاده از Identity یعنی شما چرخ رو از اول اختراع نمیکنید! امنیت سایتتون رو به یه سیستم استاندارد جهانی میسپارید و وقتتون رو روی ویژگیهای باحالتر سایتتون میذارید. 🛠️💎
امیدوارم این توضیح براتون مفید بوده باشه! اگه سوالی داشتید توی کامنتها بپرسید. 👇😊
#برنامه_نویسی #ASP_NET_Core #امنیت #آموزش #Identity
پروژه ASP.Net Core MVC (وب و سی شارپ)
پکیج برای پروژه های قبلی نسخه 8.0.24
سلام! 🌹 بله حتماً، این یک روش عالی برای نصب پکیجها بدون نیاز به اینترنت است. 👇
برای کانال ایتای خودتون میتونید از متن زیر استفاده کنید:
***
👋 سلام دوستان! آموزش نصب پکیجها به صورت آفلاین (Local Nuget) 🚀
اگر پکیج مورد نظرتون رو دانلود کردید و میخواید بدون اینترنت تو پروژه استفاده کنید، این مراحل ساده رو دنبال کنید: 👇
۱. اول یک پروژه جدید ASP.NET Core MVC با هر اسمی که دوست دارید بسازید. 🆔
۲. روی نام پروژه در Solution Explorer راستکلیک کنید و گزینه Edit Project File رو بزنید. 📝
۳. کدهای زیر رو توی فایل پروژه کپی کنید و ذخیره کنید: 💾
<ItemGroup> <PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.24" /> <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.24" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="8.0.24"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> </PackageReference> </ItemGroup>✨ نکته مهم: وقتی این کدها رو اضافه میکنید و پروژه رو Restore میکنید، ویژوال استودیو خودش میره توی پوشهی لوکال ناگت (همون پوشهای که پکیجها توش هستن) و پکیجها رو پیدا کرده و نصب میکنه! 🎁 آدرس پکیج که قرار می دهید در پنجره ویندوز یا دکمه ویندوز + R را بزنید %userprofile%/.nuget ➖ مزیت: دیگه نیازی به اینترنت پرسرعت نیست و همه چیز رو از روی سیستم خودتون لود میکنه. ⚡️ موفق باشید! 🌹
فعلا قابلیت پخش رسانه در مرورگر فراهم نیست
مشاهده در پیام رسان ایتا
فعلا قابلیت پخش رسانه در مرورگر فراهم نیست
مشاهده در پیام رسان ایتا
فعلا قابلیت پخش رسانه در مرورگر فراهم نیست
مشاهده در پیام رسان ایتا
فعلا قابلیت پخش رسانه در مرورگر فراهم نیست
مشاهده در پیام رسان ایتا
فعلا قابلیت پخش رسانه در مرورگر فراهم نیست
مشاهده در پیام رسان ایتا
فعلا قابلیت پخش رسانه در مرورگر فراهم نیست
مشاهده در پیام رسان ایتا
پروژه ASP.Net Core MVC (وب و سی شارپ)
:::writing
📦 آشنایی با Areas و Identity در ASP.NET Core
وقتی یک پروژه ASP.NET Core بزرگتر میشود، مدیریت صفحهها، کنترلرها و بخشهای مختلف سختتر میشود. برای همین مایکروسافت دو مفهوم مهم را ارائه کرده است: Areas و Identity.
بیایید خیلی ساده و کاربردی با آنها آشنا شویم. 👇
---
## 🧭 Areas چیست؟
Areas راهی برای تقسیم یک پروژه بزرگ به چند بخش منطقی است.
فرض کنید یک سایت دارید که شامل این قسمتهاست:
👤 بخش کاربران
🛒 بخش فروشگاه
🛠 بخش مدیریت (Admin)
اگر همه اینها در یک پوشه قرار بگیرند، پروژه خیلی شلوغ میشود.
اینجاست که Areas کمک میکند.
با Areas میتوانید پروژه را به چند ناحیه (Area) تقسیم کنید.
مثلاً:
📁 Admin
📁 Customer
📁 Identity
هر کدام از این Areas میتوانند کنترلر، ویو و مدلهای مخصوص خودشان را داشته باشند.
به زبان ساده:
👉 Areas مثل یک پروژه کوچک داخل پروژه اصلی هستند.
مزایا:
✅ سازماندهی بهتر پروژه
✅ مناسب برای پروژههای بزرگ
✅ جدا کردن بخشهای مختلف سایت
---
## 🔐 Identity چیست؟
ASP.NET Core Identity یک سیستم آماده برای مدیریت کاربران است.
با Identity میتوانید خیلی راحت این قابلیتها را به سایت اضافه کنید:
👤 ثبتنام کاربران (Register)
🔑 ورود به سیستم (Login)
🚪 خروج از حساب (Logout)
🔒 تغییر رمز عبور
📧 تأیید ایمیل
🛡 مدیریت نقشها (Roles)
⛔️ جلوگیری از دسترسی غیرمجاز
به عبارت ساده:
Identity یک سیستم کامل احراز هویت و مدیریت کاربران است.
---
## 📁 چرا Identity داخل Areas قرار میگیرد؟
در ASP.NET Core معمولاً Identity داخل یک Area به نام Identity قرار میگیرد.
مثلاً ساختار پروژه ممکن است اینطور باشد:
📁 Areas
📁 Identity
📁 Account
📁 Manage
این کار چند مزیت دارد:
✅ جدا شدن صفحات احراز هویت از بقیه سایت
✅ مرتبتر شدن ساختار پروژه
✅ امکان شخصیسازی صفحات ورود و ثبتنام
---
## 🧠 تفاوت Identity با Authorization
خیلیها این دو را اشتباه میگیرند.
🔐 Authentication (Identity)
یعنی: کاربر چه کسی است؟
مثال: Login
🛡 Authorization
یعنی: کاربر چه اجازهای دارد؟
مثال: دسترسی فقط برای Admin
---
## 🎯 جمعبندی
✅ Areas برای تقسیم پروژه به بخشهای مختلف استفاده میشود.
✅ Identity سیستم مدیریت کاربران در ASP.NET Core است.
✅ معمولاً Identity در یک Area جداگانه قرار میگیرد تا پروژه مرتبتر باشد.
---
اگر دوست دارید درباره این موضوعات بیشتر بدانید:
🔥 Role Based Authorization
🔥 ساخت Admin Panel
🔥 مدیریت کاربران
🔥 امنیت در ASP.NET Core
حتماً دنبال کنید. 🚀
:::
پروژه ASP.Net Core MVC (وب و سی شارپ)
من کاری کردم که همه را خودتون فارسی کنید