OTP tekshiruv, sessiya boshqaruvi va kuchli admin paneli bilan zamonaviy, ishlab chiqarishga tayyor autentifikatsiya tizimi. Xavfsizlik haqida qayg'uradigan dasturchilar uchun yaratilgan.
Ilovalaringizda xavfsiz autentifikatsiyani amalga oshirish uchun kerak bo'lgan hamma narsa
Parol zaifliklarini yo'q qiling. Foydalanuvchilar vaqtinchalik OTP kodlari yordamida autentifikatsiya qiladilar. Hack qilish yoki sizib chiqish mumkin bo'lgan parollar yo'q.
Avtomatik muddatlash bilan xavfsiz, kriptografik jihatdan yaratilgan tokenlar. Foydalanuvchi tajribasi uchun refresh tokenlari mavjud.
Brut kuch hujumlaridan built-in himoya. Barcha sezgir operatsiyalar uchun sozlanadigan urinish limitlari va kutish davrlari.
Foydalanuvchilarni boshqarish, sessiyalarni ko'rish va tugatish, hisoblarni bloklash/ochish va kirish faoliyatini kuzatish uchun kuchli admin API.
Har bir sessiya IP manzil, user agent va qurilma ma'lumotlarini qayd etadi. Foydalanuvchilar o'z faol sessiyalarini ko'rishi va boshqarishi mumkin.
OTP kodlarini yuborish uchun SMTP qo'llab-quvvatlash. Gmail, cPanel yoki boshqa SMTP provayderlari bilan ishlaydi.
Oson integratsiya uchun oddiy, oldindan aytib bo'ladigan endpointlar
/api/register
Yangi foydalanuvchi hisobini email orqali yaratish
/api/login/request-otp
Autentifikatsiya uchun OTP kodi so'rash
/api/login/verify-otp
OTP ni tekshirish va access token olish
/api/user
Autentifikatsiya qilingan foydalanuvchi ma'lumotlarini olish
/api/user
Foydalanuvchi profil ma'lumotlarini yangilash
/api/logout
Joriy sessiyani bekor qilish
/api/refresh
Muddati o'tgan access tokenni yangilash
/api/health
API va ma'lumotlar bazasi holatini tekshirish
Oddiy REST chaqiruvlari bilan daqiqalarda boshlang
// Yangi foydalanuvchini ro'yxatdan o'tkazish
const register = async () => {
const res = await fetch('/MusinAuth/api/register', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
email: 'foydalanuvchi@misol.com',
name: 'Ali Valiyev'
})
});
return res.json();
};
// OTP bilan kirish
const login = async (email) => {
// 1. OTP so'rash
await fetch('/MusinAuth/api/login/request-otp', {
method: 'POST',
body: JSON.stringify({ email })
});
// 2. Email dan kelgan OTP bilan tekshirish
const result = await fetch('/MusinAuth/api/login/verify-otp', {
method: 'POST',
body: JSON.stringify({ email, otp: '123456' })
});
// 3. Tokenlarni saqlash
localStorage.setItem('token', result.data.token);
};
// Autentifikatsiya qilingan so'rov
const getUser = async () => {
const res = await fetch('/MusinAuth/api/user', {
headers: { 'Authorization': 'Bearer ' + token }
});
return res.json();
};