Sobes.tech
Junior — Middle

OAuth protokolining ishlash prinsipi va uning asosiy xususiyatlarini tushuntirib bera olasizmi?

sobes.tech AI

AIdan javob

OAuth — bu ruxsat berish protokoli bo‘lib, u uchinchi tomon ilovalariga foydalanuvchining parolini uzatmasdan, uning resurslariga cheklangan kirish imkonini beradi.

OAuth ning asosiy xususiyatlari:

  • Parollar o‘rniga kirish tokenlarini ishlatadi.
  • Foydalanuvchiga ilovaga qanday huquqlar berilishini nazorat qilish imkonini beradi.
  • Turli ruxsat berish oqimlarini qo‘llab-quvvatlaydi (ruxsat berish kodi, implicit, mijoz ma’lumotlari va boshqalar).

Ishlash prinsipi:

  1. Foydalanuvchi mijoz ilovasi orqali ruxsat berishni boshlaydi.
  2. Mijoz foydalanuvchini ruxsat berish serveriga yo‘naltiradi.
  3. Foydalanuvchi autentifikatsiya qilinadi va rozilik bildiradi.
  4. Ruxsat berish serveri mijozga kirish tokenini beradi.
  5. Mijoz tokenni ishlatib, himoyalangan resurslarga kiradi.

Ruxsat berish kodi yordamida ishlashning soddalashtirilgan misoli:

// Token olish uchun pseudokod
resp, err := http.PostForm("https://auth.server.com/token", url.Values{
    "grant_type": {"authorization_code"},
    "code": {authCode},
    "redirect_uri": {redirectURI},
    "client_id": {clientID},
    "client_secret": {clientSecret},
})
// Keyin API so‘rovlar uchun olingan tokenni ishlatish