Vad är OAuth och vad används denna teknik till?

Fler och fler hemsidor, forum, bloggar, butiker m.m. De ber oss att registrera oss genom att fylla i alla våra uppgifter om och om igen för varje webbplats. Tack vare’ Öppen auktorisering (OAuth), vi kan glömma att behöva registrera oss om och om igen i var och en av de tjänster vi använder, eftersom vi med en enda registrering mycket enkelt kan ansluta till olika webbplatser, utan att behöva dela hela vår digitala identitet. Idag i RedesZone ska vi förklara hur denna teknik fungerar.
Hur OAuth föddes
OAuth föddes ur utvecklingen av Open ID för Twitter, när dess utvecklare Blaine Cook fick en speciell förfrågan för att se om han, med Open ID, kunde tillåta instrumentpanelswidgets att komma åt hans tjänster. Efter att ha träffat Blaine Cook, Chris Messina och Larry Halff insåg de att det inte fanns någon fri mjukvarustandard för att delegera åtkomst till olika API:er.
2007 bildades diskussionsgruppen för vad vi känner som OAuth borde bildas. Dess funktion vid den tiden var ingen annan än att skriva ett utkast med alla idéer och förslag för att skapa ett fritt och öppet protokoll, det vill säga gratis programvara så att vilket företag och vilken användare som helst kunde integrera det i sina webbplatser eller onlinetjänster. Senare fick DeWitt Clinton, en Google-anställd, veta om skapandet av denna grupp och beslutade sig för att stödja projektet. Utkastet blev slutligen klart i juli 2007 efter bara fyra månader och i oktober 2007 släpptes utkastet till Oauth Core 1.0, vilket definitivt skapade en stor förändring i tjänståtkomst.
Närvarande
OAuth är en öppen standard som möjliggör säker auktorisering genom användning av ett API. Den används för närvarande sedan oktober 2012, i sin OAuth 2.0-version där dess främsta förbättringar är att den nu tillhandahåller auktoriseringsflöden för webbapplikationer, stationära applikationer, mobiltelefoner. För närvarande stöder tjänster som Google, Facebook, Azure Active Directory, Github endast OAuth 2.0-protokoll.
Hur OAuth 2.0 fungerar
Kom ihåg att OAuth 2.0 verkligen är ett auktoriseringsramverk som tillåter applikationer att få begränsad tillgång till användarkonton för vissa tjänster som Facebook, Google, Twitter och GitHub. Dess funktion består i huvudsak av att delegera användarens autentiseringsbehörighet till tjänsten som hanterar dessa konton, så att det är tjänsten själv som ger åtkomst till tredjepartsapplikationer. I OAuth-protokollet kan följande roller definieras för att du ska förstå det bättre.
Kund
Detta skulle vara applikationen som vill komma åt användarkontot för en viss tjänst, såsom Facebook, Twitter, Google, etc.
Användare
Användaren är den som auktoriserar applikationen att komma åt sitt konto, genom ett popup-fönster som ber om tillåtelse, och vanligtvis innehåller information om data som kommer att delas med den nya tjänsten.
Servitör
Auktoriseringsservern tar emot åtkomstförfrågningar från applikationer som vill använda inloggningen till vissa tjänster som Facebook, Twitter eller Google, till exempel, för att ansluta till en webbsida, ett spel etc. Denna server är ansvarig för att verifiera identiteten för användaren och tjänsten som begär åtkomst, auktoriserar eller nekar åtkomst.
Låt oss se tillsammans: det första som händer är att applikationen begär tillstånd att komma åt användardata genom att använda en av tjänsterna som tillåter det. Sedan, om användaren beviljar denna begäran, får applikationen en åtkomstbehörighet som den måste validera korrekt med servern och om ja, utfärdar den en token för applikationen som begär åtkomst så att den kan komma åt . I händelse av att användaren i något skede nekar åtkomst eller servern upptäcker ett fel, kommer applikationen inte att kunna komma åt det och kommer att visa ett felmeddelande.
Utan tvekan är detta OAuth 2.0-ramverk en stor fördel när det gäller enkel tillgång till tjänster för användaren, men framför allt för alla de webbsidor och spel som underlättar åtkomsten till sina användare och vinner fler kunder. Vi rekommenderar att du besöker OAuth 2.0 officiella webbplats där du hittar alla tekniska detaljer om detta ramverk och hur du implementerar det på dina webbsidor för att underlätta för dina användare i början av sessionen.