Mi az az engedélyezési típus?

OAuth 2.0 engedélyezési kontextus

Az OAuth 2.0 engedélyezés keretein belül az "engedélyezési típus" (Grant Type) kifejezés arra a módszerre vonatkozik, amellyel egy alkalmazás hozzáférési tokent szerez. Lényegében az engedélyezési típus meghatározza, milyen engedélyezési folyamatot fog használni az alkalmazás a felhasználói adatokhoz való hozzáféréshez.

Különböző engedélyezési típusok az OAuth 2.0-ban

Az OAuth 2.0 több engedélyezési típust határoz meg, amelyek különböző alkalmazási forgatókönyvekre vannak szabva:

OAuth 2.0 a LoadFocus használatával

  1. Authorization Code:
  • Legjobb: Olyan alkalmazásokhoz, amelyek biztonságban tudják tartani a kliens titkot, gyakran szerver oldali alkalmazások.
  • Folyamat: A felhasználó először egy hitelesítési szerverre irányítódik át. Sikeres hitelesítés után visszairányítják az alkalmazásba egy engedélyezési kóddal. Az alkalmazás ezt a kódot hozzáférési tokenre cseréli.
  1. Implicit:
  • Legjobb: Felhasználói ügynök központú alkalmazásokhoz, mint az egyoldalas alkalmazások.
  • Folyamat: Tükrözi az Authorization Code folyamatot, de a hozzáférési token közvetlenül kerül kézbesítésre egy köztes kód nélkül. Kevésbé biztonságosnak tekintik, mint az Authorization Code módszert.
  1. Password (Resource Owner Password Credentials):
  • Legjobb: Nagyon megbízható alkalmazásokhoz, amelyeket gyakran ugyanaz a szervezet birtokol, mint az erőforrás szervert.
  • Folyamat: A felhasználók közvetlenül megadják felhasználónevüket és jelszavukat az alkalmazásban. Az alkalmazás ezután ezeket a hitelesítő adatokat használja egy hozzáférési token lekéréséhez. Ezt a folyamatot általában nem ajánlják, hacsak a kliens nem rendkívül megbízható.
  1. Client Credentials:
  • Legjobb: Olyan szolgáltatásokhoz vagy alkalmazásokhoz, amelyeknek saját erőforrásaikhoz kell hozzáférniük, nem a felhasználóéihoz.
  • Folyamat: Az alkalmazás saját hitelesítő adataival (mint a kliens azonosító és titok) hitelesít, és cserébe hozzáférési tokent kap.
  1. Device Code (átfogó böngészőképességek nélküli eszközökhöz):
  • Legjobb: Olyan eszközökhöz, mint okostévék, játékkonzolok vagy nyomtatók.
  • Folyamat: Az eszköz kommunikál az engedélyezési szerverrel egy eszközkód és felhasználói kód megszerzéséhez. A felhasználó egy másik eszközön (pl. okostelefon) megadja a felhasználói kódot. Az ellenőrzés után az eszköz hozzáférési tokent kap.
  1. Refresh Token:
  • Használat: Nem önálló folyamat, hanem más engedélyezési típusokat egészít ki. Amikor a hozzáférési token lejár, a frissítési token lehetővé teszi az alkalmazás számára, hogy újat szerezzen anélkül, hogy a felhasználónak újra be kellene jelentkeznie.

Miért fontosak az engedélyezési típusok?

Az engedélyezési típusok rugalmasságot kínálnak a különböző alkalmazási kontextusokhoz. Mindegyik biztosítja, hogy a hozzáférési token beszerzése a lehető legbiztonságosabb legyen az alkalmazás korlátai figyelembevételével. Az engedélyezési típus választása befolyásolja a kliens, a felhasználó és az engedélyezési szerver közötti interakciókat, így helyes kiválasztása kulcsfontosságú mind a használhatóság, mind a biztonság szempontjából.