OAuth 2.0 101

Författare: Judy Howell
Skapelsedatum: 26 Juli 2021
Uppdatera Datum: 23 Juni 2024
Anonim
OAuth 2.0: An Overview
Video: OAuth 2.0: An Overview

Innehåll


Hämtmat:

OAuth 2.0 designades för att förbättra den ursprungliga versionen av protokollet. Enligt kritikerna lyckas det på vissa områden och misslyckas i andra.

Många lyxbilar kommer med en betjäningsnyckel. Det är en speciell nyckel som du ger parkeringsvakt och till skillnad från din vanliga nyckel kommer du bara att låta bilen köras ett kort avstånd medan du blockerar åtkomst till bagagerummet och mobiltelefonen ombord. Oavsett de begränsningar som betjäningsnyckeln sätter är idén mycket smart. Du ger någon begränsad tillgång till din bil med en speciell nyckel, medan du använder en annan nyckel för att låsa upp allt annat. - Den officiella guiden till OAuth 1.0

Det är så som de gemenskapsbaserade specifikationsriktlinjerna förklarade OAuth långt tillbaka under 2007. Och medan OAuth 2.0 är ett helt nytt protokoll gäller samma beskrivning fortfarande - OAuth är fortfarande ett sätt för användare att ge tredje parts åtkomst (och begränsad åtkomst) till deras resurser utan att dela sina lösenord.

Om du är på Internet regelbundet, är chansen stor att du har stött på en webbplats som använder OAuth. Trots allt använder världens största webbplatser, som Google, MySpace, Photobcuket, Yahoo, Evernote och Vimeo, denna autentiseringsstandard. Läs vidare för att lära dig mer om denna standard, och varför nästa generation, OAuth 2.0, fortfarande används på en relativt experimentell basis.

Vad är OAuth 2.0?

Först måste du veta vad OAuth, som ett protokoll, gör: Det tillåter godkännande av applikationsprogrammeringsgränssnitt mellan två webb- eller stationära appar. Som ett resultat kan webbplatser dela skyddade resurser med andra webbplatser och tjänster.

Om du till exempel spelar Scramble med vänner på din iPad kan du ange dina referenser, så att spelet kan titta igenom din vännerlista för att se vilken av dem som spelar spelet - och bjuda in andra att gå med. Eller så kan du kontakta vänner på Google+ baserat på vem som följer dig på. Den här typen av applikationer är praktiska för användare, men de involverar att ge en webbplats eller ett program åtkomst till information om dig på en annan webbplats.

OAuth 2.0 fungerar ungefär som den första inkarnationen av OAuth, men det är en helt ny standard helt och hållet. Detta betyder att den inte är bakåtkompatibel med OAuth 1.0. Version 2.0 rensade upp många av problemen med den ursprungliga OAuth och gjorde förbättringar.

Samtidigt som man i princip behöll arkitekturen för den första versionen, 2.0 förbättrades på:
  • Autentisering och signaturer. OAuth 2.0 gjorde det lättare för någon på klientsidan att implementera protokollet.
  • Användarupplevelse och alternativa sätt att utfärda tokens
  • Prestanda, särskilt med större webbplatser och tjänster
En mer omfattande förklaring till vad som är nytt med OAuth 2.0 tillhandahålls av Eran Hammer, som tidigare var en del av OAuth-arbetsgruppen. Du kan komma åt det här. Observera dock att Hammer lämnade arbetsgruppen i juli 2012, med hänvisning till säkerhetsproblem när han implementerade standarden. Som ett resultat, även om OAuth var tänkt att slutföras i slutet av 2010, förblir det en föreslagen standard (i skrivande stund), även om det är en del av s Graph API. Google och Microsoft experimenterar också med OAuth 2.0-stöd i sina API: er.

Fördelarna med att använda OAuth 2.0

En av de bästa orsakerna till att använda OAuth är att det gör delningen så mycket lättare. Var redan van vid att ladda upp foton till Instagram och få dem att lägga upp automatiskt till och. I själva verket är det den här typen av användarvänlighet och crossover som fortsätter att göra sociala medier så tilltalande.

Men det är inte allt. För slutanvändare betyder OAuth att du inte behöver skapa en annan profil. Om du till exempel vill lämna en kommentar på en artikel kan du använda dina eller referenser för att göra det istället för att behöva registrera dig för ett konto på en given webbplats. Det här är bra för webbplatser som du vanligtvis inte är aktiva på eller som du kanske inte litar på. Det kan också gynna webbplatserna genom att säkerställa att användare har en identitet på, vilket gör att spam-kommentarer blir mindre troliga.

OAuth betyder också färre lösenord att komma ihåg. Det är en bästa praxis att ha olika lösenord för olika webbplatstjänster. Så istället för att memorera ett annat lösenord för Pinterest, behöver du bara använda ditt lösenord för att komma åt tjänsten. Pinterest, förresten, ser inte ditt lösenord.

Du kan också begränsa vilka resurser som nås via din OAuth. När du till exempel spelar ett spel på kan du ange om du vill att spelet ska läggas ut på väggen för dina räkning eller inte.

För utvecklaren ger OAuth 2.0 en redan utvecklad kod för autentiseringar, visning av social interaktion och visning av användarprofil. Detta innebär färre buggar för utvecklare att hantera och en lägre risk eftersom API: et redan har felsöks, testats och bevisats. Slutligen drar du också nytta av att ha mindre data att lagra på dina egna servrar.

Hur OAuth 2.0 kom att vara

Det är ganska uppenbart att OAuth är ett svar på uppmaningen till säker datoranvändning och användarvänlighet för olika webbtjänster. OAuth 2.0 å andra sidan uppstod från behovet av att göra OAuth mindre komplex. Men hela idén för båda kom faktiskt från OpenID.

OpenID är en tjänst som tillåter användare att logga in på olika tjänster med hjälp av inloggningsuppgifter från en annan webbplats. Men OpenID var mycket begränsat, så en grupp människor som arbetade på olika godkännandeprotokoll för sina egna webbplatser samlades. De första OAuth-implementeringarna gjordes 2007 och den första revisionen kom två år senare.

OAuth 2.0 kom till scenen 2010. Dess avsikt var att fokusera på klient-utvecklare enkelhet och vara lättare skalbar och samtidigt förbättra användarupplevelsen.

Utmaningar framåt?

Även om Google, Klout och andra stora namn implementerar OAuth 2.0, kan det fortfarande finnas en stenig väg framför detta protokoll. Det finns kritik från OAuth 2.0-gemenskapen, inklusive oro för protokollets säkerhet (många tror att det är mindre säkert än OAuth 1.0).

Enligt Hammer, OAuth 2.0 fungerar om den används av en kompetent programmerare som är väl insatt i webbsäkerhet. Tyvärr är det bara en liten minoritet utvecklare som passar den räkningen.

Dessutom kan OAuth 2.0-koder inte återanvändas. Exempelvis skulle OAuth 2.0-protokoll som används inte kunna användas av någon annan webbplats. Dessutom är det nya protokollet faktiskt mycket mer komplexa än originalen.

Men den riktiga kickaren för många är att OAuth 2.0 inte verkar ge någon verklig fördel eller förbättring jämfört med 1.0. Hammer skriver att om du lyckas implementera 1.0 finns det ingen anledning att uppgradera till 2.0.

OAuth 2.0 är dock fortfarande mycket levande. Om den tar upp kritik och frågor som tas upp kan det fortfarande hitta en plats som ett mycket kraftfullt protokoll. I skrivande stund anses dock version 1.0 fortfarande vara den officiella, stabila och testade versionen av OAuth. För utvecklare som syftar till att arbeta med stora namn i onlinevärlden kan implementering av detta protokoll ändå bli en nyckelfärdighet i en inte alltför avlägsen framtid.