Slovník
OAuth
OAuth je průmyslově standardní autorizační protokol, který uživatelům umožňuje udělit aplikacím třetích stran omezený přístup k jejich účtům u jiných služeb, aniž by sdíleli svá hesla. Když se přihlašujete na web účtem Google nebo GitHubu, tuto výměnu obstarává právě OAuth. Aplikace obdrží token s konkrétními oprávněními místo skutečných přihlašovacích údajů uživatele.
Protokol funguje v toku, kdy je uživatel přesměrován k poskytovateli služby, ověří se přímo u něj a poté je přesměrován zpět do aplikace s autorizačním kódem. Aplikace tento kód vymění za přístupové tokeny, jimiž může volat API jménem uživatele. Scopes přesně definují, k čemu má aplikace přístup, a tokeny lze odvolat bez změny uživatelova hesla.
Pro webové vývojáře je OAuth nezbytný při implementaci přihlašování přes sociální sítě, přístupu k API třetích stran, jako je Google Calendar nebo repozitáře GitHubu, a při budování integrací mezi službami. Aktuálním standardem je OAuth 2.0, na němž je postaven OpenID Connect určený specificky pro autentizaci. Správná implementace OAuth vyžaduje pečlivé zacházení s redirect URI, parametry state pro ochranu proti CSRF, ukládáním tokenů a rotací refresh tokenů, aby bezpečnost zůstala zachována po celý životní cyklus autorizace.