Foydalanuvchilarni autentifikatsiya qilishga veb dasturni tayyorlash
Autentifikatsiya nima? Autentifikatsiya – bu foydalanuvchi tomonidan o‘zining shaxsini tasdiqlash uchun taqdim etilgan ma’lumotlarini tekshirish. Foydalanuvchi autentifikatsiyasi muvaffaqiyatli bo‘lgandan so‘ng, keyingi barcha so‘rovlarga foydalanuvchi identifikatori bilan cookie qo‘shiladi.
Autentifikatsiya tizimi foydalanuvchilarning haqiqiyligini tekshiradi va dasturning muhim qismiga kirishni cheklash yo‘lidagi birinchi qadamdir.
ASP.NET MVC da foydalanuvchilarni boshqarish uchun ASP.NET Identity dan foydalaniladi.
ASP.NET Identity bu ASP.NET dasturlarida Membership API ni o‘rnida foydalanuvchilarni boshqarish uchun Microsoft tominidan taqdim etilgan yangi API. ASP.NET Identity boshqa foydalanuvchi boshqarish tizimlari, masalan Active Directory-ni qo‘llab-quvvatlaydi.
OWIN OWIN (Open Web Interface for.NET) – bu veb ilovalarni ular joylashgan muhitdan ajratib turadigan abstrakt qatlam. Ya’ni, bunday abstraktsiya ASP.NET texnologiya tizimida ko‘proq imkoniyatlar yaratishga, veb ilovalarni ishlab chiqish muhitida ko‘proq moslashuvchanlikka va server dasturlari infratuzilmasining oson rivojlanishiga imkon beradi.
OWIN ochiq standartdir (qo‘shimcha ma’lumot olish uchun, owin.org ga qarang). Microsoft OWIN standartini vizual ravishda tatbiq qiladigan va veb ilovalarning ishlashini ta’minlaydigan komponentlar to‘plamini o‘z ichiga olgan Katana loyihasini yaratdi. OWIN/Katana dasturida Microsoft ASP.NET texnologiya stekini qolgan .NET freymvorkidan izolyasiyasini namoyish etdi.
OWIN-dan foydalanib, dasturchilar faqatgina hozir zarur bo‘lgan komponentlarni ulashlari mumkin. Ushbu yondashuv tufayli ishlab chiqilgan ilova keraksiz funksiyalar bilan ortiqcha yuklanmaydi va shuning uchun tezroq ishlaydi (nazariyada).
OWIN prinsipi asosida yaratilgan yaxshi namuna bu Web API va SignalR kutubxonalari bo‘lib, ular System.Web nomlar maydoni va HTTP so‘rovlarini qayta ishlash uchun IIS serverini talab qilmaydi. ASP.NET MVC Framework, bu kutubxonalardan farqli o‘laroq, ASP.NET standart kutubxonasiga bog‘liq.
ASP.NET Identity kutbxonasi Membership API singari SQL Server ma’lumotlar bazasi bilan qattiq bog‘lanmagan, ya’ni boshqa MBBTlarni ham qo’llab-quvvatlaydi. So‘nggi paytlarda NoSQL ma’lumotlari bilan ishlash yondashuvi tobora kuchayib borgan bo‘lsa-da, relyasion ma’lumotlar bazalari asosiy baza bo‘lib qolmoqda va ko‘pgina dasturchilar jamoalari tomonidan foydalanilmoqda.
ASP.NET Identity ma’lumotlar bazasi tuzilmasini avtomatik ravishda yaratish uchun Entity Framework Code-First yondashuvidan foydalanadi, lekin avval siz ma’lumotlar bazasini qo‘lda yaratishingiz kerak.