OAuth nədir?

 OAuth  nədir?


OAuth və ya Open Authorization, girişin verilməsi üçün açıq standart icazə protokoludur. Bu, istifadəçilərə xidmət təminatçılarına (yəni veb-saytlar və proqramlar) parol təqdim etmədən məlumatlarına giriş imkanı verən təhlükəsiz üsuldur.

OAuth müştərilərə server sahibinin adından server resurslarına girişi etibarlı şəkildə həvalə etməyə imkan verir. Xüsusi avtorizasiya axınları müştəriyə parolunu təqdim etmədən qorunan resurslara daxil olmaq imkanı verir. Əvəzində müştəri həmin resursa giriş vermək üçün resursun sahibi tərəfindən təsdiqlənə bilən giriş nişanlarından istifadə edir.

OAuth tokenləri nədir?


OAuth tokenləri istifadəçiyə resurslara girişi təmin edir. Başqa sözlə, onlar istifadəçilərin autentifikasiyasına xidmət etmir, lakin xidmət təminatçısı tərəfindən istifadəçi adından digər resurslara giriş icazəsi vermək üçün istifadə olunur.

OAuth əməliyyatı istifadəçi öz xidmət provayderi ID-sini istifadə edərək başqa resursdan icazə tələb etdikdə baş verir. Resurs xidmət təminatçısından icazə tələb edir ki, bu da sorğu işarəsi və məxfi açar şəklində təqdim olunur. Daha sonra resurs sorğunun autentifikasiyası üçün istifadəçini xidmət təminatçısına yönləndirir. Bu nöqtədə, resurs giriş nişanı və məxfi açar üçün sorğu işarəsini mübadilə edir. İki token eyni məxfi açara malikdirsə, OAuth prosesi tamamlandı və istifadəçi resursa girişi xidmət təminatçısına uğurla həvalə etdi.

Yuxarıdakı nümunə ümumi OAuth prosesini göstərir. OAuth protokolu həmçinin istifadəçinin öz istəyi ilə tokenləri ləğv etmək hüququ və müxtəlif resurslar üçün xidmət təminatçılarına girişin müxtəlif səviyyələrini müəyyənləşdirmək də daxil olmaqla, icazələrin daha ətraflı nəzarəti və idarə edilməsini təmin edir.

OAuth 1.0 və OAuth 2.0

OAuth 2.0 2012-ci ildə OAuth 1.0-ın əsaslı təmiri kimi təqdim edildi. OAuth-un bu versiyasına edilən dəyişikliklər o qədər əhəmiyyətli idi ki, 2.0 və 1.0 versiyaları uyğun gəlmirdi. OAuth 2.0 OAuth avtorizasiyasında seans fiksasiya zəifliyini aradan qaldırmaq üçün nəzərdə tutulmuşdur.

Bu problem OAuth 2.0-da həll olunsa da, yeni versiya qəsdən şifrələməni, imzalamağı, müştəri yoxlamasını və ya kanal bağlamasını müəyyən etmir və ya dəstəkləmir və bunun əvəzinə tətbiqçilərdən bu məqsədlə HTTPS/TLS kimi fərqli təhlükəsizlik protokolundan istifadə etməyi tələb edir.Aşağıda OAuth 1.0 və 2.0 arasındakı fərqlər verilmişdir.


OAuth və SAML: fərq nədir?


SAML, bir cihaza bir və ya bir neçə cihaz adından həm autentifikasiya, həm də avtorizasiya həyata keçirməyə imkan verən konsepsiyanı təsvir edən XML variantıdır.

JSON kimi sadə məlumat kodlaşdırma formatlarının meydana çıxması ilə OAuth protokolu mobil cihazlara da genişləndi. Oauth SAML-in dəyişdirilməsi zərurətindən yaranan nisbətən yeni protokol olsa da, hər iki protokol tək girişi (SSO) təmin etmək üçün vacibdir.

Başqa sözlə, OAuth SAML-ə alternativ deyil, çünki hər iki protokol bir-birini tamamlaya bilər. Məsələn, tək giriş mühitində SAML autentifikasiya (istifadəçinin autentifikasiyası və ona giriş icazəsi) üçün cavabdeh ola bilər və OAuth avtorizasiya üçün (müəyyən qorunan resurslara girişin verilməsi) cavabdeh ola bilər.

Paylaşmaq: