لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش احراز هویت و مجوز در . NET 6 با JSON Web Tokens (JWT)، Refresh Tokens & Roles
Authentication & Authorization in . NET 6 with JSON Web Tokens (JWT), Refresh Tokens & Roles
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره:
به کلاس "مجوز احراز هویت در NET 6" خوش آمدید.
در این کلاس، نحوه
را یاد خواهید گرفت
یک پروژه ASP.NET Web API ایجاد کنید
کاربران را ثبت کرده و با نام کاربری و رمز عبور آنها وارد شوید
این کاربران را در پایگاه داده SQLite ذخیره کنید
از مهاجرتهای اولیه کد Entity Framework Core
استفاده کنید
برای احراز هویت یک کاربر، JSON Web Tokens (JWT) ایجاد کنید
توکن های تازه سازی ایجاد کنید
اجازه دادن به کاربر با نقش
همه اینها را در یک پروژه با استفاده از NET 6 و Visual Studio 2022 خواهید آموخت.
تجربه اندکی با C#، .NET و ایجاد Web API قطعا یک مزیت است.
امیدوارم آماده باشید! بیایید شروع کنیم.
پروژه ای که ما در این کلاس ایجاد می کنیم یک Web API است که با چارچوب .NET 6 ساخته شده است.
ما با ثبت نام کاربران و وارد کردن آنها با نام کاربری و رمز عبور آنها شروع می کنیم. برای اینکه بتوانیم کاربران را وارد کنیم، از Swagger UI استفاده می کنیم. با Swagger، میتوانیم API کامل خود را نیز آزمایش کنیم.
علاوه بر این، EF Core را نصب کرده و از آن برای ذخیره کاربران در پایگاه داده SQLite استفاده می کنیم.
پس از آن، JSON Web Tokens (JWT) ایجاد میکنیم و این نشانه را تأیید میکنیم تا یک کاربر با موفقیت احراز هویت شود.
مرحله بعدی ایجاد نشانه های تازه سازی است. بنابراین، اگر یک JWT دیگر معتبر نیست، میتوانیم از یک نشانه تازهسازی ذخیره شده در یک کوکی فقط HTTP برای بازخوانی JWT استفاده کنیم و کاربر همچنان بدون وارد کردن نام کاربری و رمز عبور احراز هویت میشود.
و مرحله آخر مجوز دادن به یک کاربر با یک نقش خاص است. این بدان معناست که فقط کاربرانی که نقش خاصی دارند میتوانند نقطه پایانی خاصی را فراخوانی کنند.
وقتی با آن کار تمام شد، یک دید کلی عالی و مهارتهای جدیدی در مورد احراز هویت و مجوز با .NET 6 خواهید داشت.
میتوانید کد منبع کامل را از اینجا در GitHub دریافت کنید: https://github.com/patrickgod/AuthenticationWebApi
سرفصل ها و درس ها
درس ها
Lessons
Refresh Token را در کوکی و در پایگاه داده تنظیم کنید
Set Refresh Token in Cookie & in the Database
سرویس احراز هویت را اضافه کنید
Add the Authentication Service
اولین تست با SwaggerUI
First Test with SwaggerUI
از JWT با SwaggerUI و Authentication Middleware استفاده کنید
Use the JWT with SwaggerUI & the Authentication Middleware
پایگاه داده را با مرورگر DB برای SQLite باز کنید
Open the Database with the DB Browser for SQLite
روش ورود را اجرا کنید
Implement the Login Method
Refresh Token (و JSON Web Token)
Refresh the Refresh Token (and the JSON Web Token)
DataContext & Entity Framework Core را اضافه کنید
Add the DataContext & Entity Framework Core
یک نقطه پایانی امن برای کاربران مجاز اضافه کنید
Add a Secured Endpoint for Authorized Users
یک JSON Web Token ایجاد و برگردانید
Create and return a JSON Web Token
کلمات پایانی
Closing Words
نمای کلی کلاس
Class Overview
GitHub Repo
GitHub Repo
معرفی نقش ها
Roles Introduction
یک AuthResponseDto اضافه کنید
Add an AuthResponseDto
رمز عبور را تأیید کنید
Verify the Password
تزریق خدمات (تزریق وابستگی)
Inject the Service (Dependency Injection)
از Code First Migrations استفاده کنید
Utilize Code First Migrations
هش رمز عبور را ایجاد کنید
Create the Password Hash
EF Core Tools را نصب کنید
Install EF Core Tools
اطلاعات Refresh Token را به مدل کاربر اضافه کنید
Add Refresh Token Data to the User Model
از Role for Authorization استفاده کنید
Use the Role for Authorization
پروژه را ایجاد کنید
Create the Project
معرفی Refresh Tokens
Refresh Tokens Introduction
مدل کاربر را اضافه کنید
Add the User Model
کاربر را در پایگاه داده ذخیره کنید
Store User in the Database
توکن Refresh را در ورود ایجاد کنید
Create the Refresh Token on Login
اضافه کردن نقش به مدل کاربر
Add Role to User Model
نقش را به عنوان ادعا به توکن وب JSON اضافه کنید
Add Role as Claim to the JSON Web Token
مقدمه
Introduction
کنترل کننده احراز هویت را اضافه کنید
Add the Authentication Controller
نمایش نظرات