Bahay Seguridad Oauth 2.0 101

Oauth 2.0 101

Talaan ng mga Nilalaman:

Anonim

Maraming mga luho na kotse ang may dalang valet key. Ito ay isang espesyal na susi na binibigyan mo ng paradahan ng paradahan at hindi katulad ng iyong regular na key, papayagan lamang ang kotse na ma-driven ang isang maikling distansya habang hinaharangan ang pag-access sa puno ng kahoy at ang onboard cell phone. Anuman ang mga paghihigpit na ipinapataw ng valet key, ang ideya ay napaka-matalino. Bibigyan ka ng isang tao ng limitadong pag-access sa iyong kotse na may isang espesyal na susi, habang gumagamit ng isa pang susi upang i-unlock ang lahat ng iba pa. - Ang Opisyal na Gabay sa OAuth 1.0


Iyon kung paano ipinaliwanag ng mga alituntunin sa pagtutukoy na nakabase sa komunidad ang OAuth pabalik noong 2007. At habang ang OAuth 2.0 ay isang ganap na bagong protocol, nalalapat pa rin ang parehong paglalarawan - Ang OAuth ay nananatiling paraan para sa mga gumagamit na magbigay ng pag-access sa third-party (at limitadong pag-access) sa kanilang mga mapagkukunan nang hindi ibinabahagi ang kanilang mga password.


Kung regular ka sa Internet, may posibilidad na nakarating ka sa isang site na gumagamit ng OAuth. Pagkatapos ng lahat, ang mga pinakamalaking website sa mundo, tulad ng Facebook, Google, MySpace, Twitter, Photobcuket, Yahoo, Evernote at Vimeo, ay gumagamit ng pamantayang pagpapatunay na ito. Magbasa nang higit pa upang malaman ang tungkol sa pamantayang ito, at kung bakit ang susunod na henerasyon, ang OAuth 2.0, ay ginagamit pa rin sa isang medyo pang-eksperimentong batayan.

Ano ang OAuth 2.0?

Una, kailangan mong malaman kung ano ang ginagawa ng OAuth, bilang isang protocol: Pinapayagan nito ang pahintulot ng interface ng application programming sa pagitan ng dalawang apps sa Web o desktop. Bilang isang resulta, ang mga website ay nakapagbabahagi ng mga protektadong mapagkukunan sa iba pang mga website at serbisyo.


Halimbawa, kung nagpe-play ka ng Scramble sa mga kaibigan sa iyong iPad, maaari mong ipasok ang iyong mga kredensyal sa Facebook, na pinapayagan ang laro na tingnan ang listahan ng iyong mga kaibigan upang makita kung alin sa kanila ang naglalaro - at mag-anyaya sa iba na sumali. O maaari kang kumonekta sa mga kaibigan sa Google+ batay sa kung sino ang sumusunod sa iyo sa Twitter. Ang mga uri ng application na ito ay madaling gamitin para sa mga gumagamit, ngunit nagsasangkot sila sa pagbibigay ng isang site o programa ng pag-access sa impormasyon tungkol sa iyo sa ibang site.


Ang OAuth 2.0 ay gumagana tulad ng unang pagkakatawang-tao ng OAuth, ngunit ito ay isang ganap na bagong pamantayan sa kabuuan. Nangangahulugan ito na hindi paatras na tugma sa OAuth 1.0. Ang Bersyon 2.0 ay naglinis ng maraming mga problema sa orihinal na OAuth at gumawa ng mga pagpapabuti.


Habang panatilihin ang pagpapanatili ng arkitektura ng unang bersyon, ang 2.0 ay pinabuting sa:

  • Ang pagpapatunay at lagda. Ginawa ng OAuth 2.0 para sa isang tao sa panig ng kliyente na ipatupad ang protocol.
  • Ang karanasan ng gumagamit at mga alternatibong paraan upang mag-isyu ng mga token
  • Pagganap, lalo na sa mas malalaking website at serbisyo
Ang isang mas kumpletong paliwanag sa kung ano ang bago sa OAuth 2.0 ay ibinigay ni Eran Hammer, na dating bahagi ng OAuth working group. Maaari mong ma-access dito. Gayunpaman, tandaan na iniwan ni Hammer ang nagtatrabaho na grupo noong Hulyo ng 2012, na binabanggit ang mga isyu sa mga alalahanin sa seguridad kapag nagpapatupad ng pamantayan. Bilang isang resulta, kahit na ang OAuth ay dapat na matapos sa katapusan ng 2010, nananatili itong isang iminungkahing pamantayan (sa oras ng pagsulat), bagaman ito ay bahagi ng Graph API ng Facebook. Ang Google at Microsoft ay nag-eeksperimento din sa suporta ng OAuth 2.0 sa kanilang mga API.

Ang Mga Pakinabang ng Paggamit ng OAuth 2.0

Ang isa sa mga pinakamahusay na dahilan upang gamitin ang OAuth ay ginagawang mas madali ang pagbabahagi. Nasanay na kami sa pag-upload ng mga larawan sa Instagram at awtomatikong mai-post ang mga ito sa Twitter at Facebook. Sa katunayan, ito ang ganitong uri ng kadalian ng paggamit at crossover na patuloy na ginagawang kapansin-pansin sa social media.


Ngunit hindi iyon ang lahat. Para sa mga end user, ang OAuth ay nangangahulugang hindi mo kailangang lumikha ng isa pang profile. Halimbawa, kung nais mong mag-iwan ng komento sa isang artikulo, maaari mong gamitin ang iyong mga kredensyal sa Facebook o Twitter na gawin ito, sa halip na kinakailangang mag-sign up para sa isang account sa isang naibigay na website. Magaling ito para sa mga site na hindi ka karaniwang aktibo, o na hindi ka maaaring pinagkakatiwalaan. Maaari rin itong makinabang sa mga site sa pamamagitan ng pagtiyak na ang mga gumagamit ay may pagkakakilanlan sa Facebook, na ginagawang mas malamang ang puna ng puna.


Ang ibig sabihin ng OAuth ay mas kaunting mga password upang matandaan. Ito ay isang pinakamahusay na kasanayan na magkaroon ng iba't ibang mga password para sa iba't ibang mga serbisyo sa website. Kaya sa halip na kabisaduhin ang isa pang password para sa, kailangan mo lamang gamitin ang iyong password sa Facebook upang ma-access ang serbisyo., sa pamamagitan ng paraan, hindi makikita ang iyong password.


Maaari mo ring limitahan kung anong mga mapagkukunan ang mai-access sa pamamagitan ng iyong OAuth. Halimbawa, kapag naglalaro ng isang laro sa Facebook, maaari mong tukuyin kung nais mo ang laro na nai-post sa iyong pader sa ngalan mo o hindi.


Para sa nag-develop, ang OAuth 2.0 ay nagbibigay ng isang na binuo na code para sa pagpapatotoo, pagpapakita ng pakikipag-ugnayan sa lipunan at pagpapakita ng profile ng gumagamit. Nangangahulugan ito ng mas kaunting mga bug para sa mga developer na makipagtalo at isang mas mababang panganib dahil ang API ay na-debug, sinubukan at napatunayan. Panghuli, makikinabang ka rin mula sa pagkakaroon ng mas kaunting data upang maiimbak sa iyong sariling mga server.

Paano Dumating ang OAuth 2.0

Halatang halata na ang OAuth ay tugon sa tawag para sa ligtas na pag-compute at kadalian ng paggamit para sa iba't ibang mga serbisyo sa Web. Ang OAuth 2.0, sa kabilang banda, ay bumangon mula sa pangangailangan na gawing mas kumplikado ang OAuth. Ngunit ang buong ideya para sa parehong aktwal ay nagmula sa OpenID.


Ang OpenID ay isang serbisyo na pinapayagan ang mga gumagamit na mag-log in sa iba't ibang mga serbisyo sa pamamagitan ng paggamit ng mga kredensyal sa pag-login mula sa ibang website. Ngunit ang OpenID ay napaka limitado, kaya ang isang pangkat ng mga tao na nagtatrabaho sa iba't ibang mga protocol ng pahintulot para sa kanilang sariling mga site ay nagtipon. Ang unang pagpapatupad ng OAuth ay ginawa noong 2007, at ang unang pag-rebisyon ay dumating makalipas ang dalawang taon.


Ang OAuth 2.0 ay dumating sa eksena noong 2010. Ang hangarin nito ay upang tumuon sa pagiging simple ng developer ng kliyente at maging mas madaling nasusukat habang pinapabuti din ang karanasan ng gumagamit.

Mga Hamon sa Unahan?

Bagaman ang Google, Klout at iba pang malalaking pangalan ay nagpapatupad ng OAuth 2.0, maaaring mayroon pa ring isang mabato na kalsada maaga pa ang protocol na ito. Mayroong mga pintas mula sa loob ng OAuth 2.0 na komunidad, kabilang ang mga alalahanin tungkol sa seguridad ng protocol (marami ang naniniwala na hindi gaanong ligtas kaysa sa OAuth 1.0).


Ayon kay Hammer, kung ginamit ng isang karampatang programmer na bihasa sa seguridad sa Web, gumagana ang OAuth 2.0. Sa kasamaang palad, tanging ang isang maliit na minorya ng mga developer ay umaangkop sa panukalang batas na iyon.


Bilang karagdagan, ang mga code ng OAuth 2.0 ay hindi magagamit muli. Halimbawa, ang mga protocol ng OAuth 2.0 na ginamit ng Facebook ay hindi madaling magamit ng ibang site. Ano pa, ang bagong protocol ay talagang mas kumplikado kaysa sa orihinal.


Ngunit ang tunay na sipa para sa maraming tao ay ang OAuth 2.0 ay hindi lumilitaw na nag-aalok ng anumang tunay na kalamangan o pagpapabuti sa paglipas ng 1.0. Sinusulat ni Hammer na kung matagumpay kang nagpapatupad ng 1.0, walang dahilan upang mag-upgrade sa 2.0.


Ang OAuth 2.0, gayunpaman, ay buhay pa rin. Kung tinutugunan nito ang mga pintas at mga isyu na naitaas, maaari pa rin itong makahanap ng isang lugar bilang isang napakalakas na protocol. Sa panahon ng pagsusulat, gayunpaman, ang bersyon 1.0 ay itinuturing pa rin ang opisyal, matatag at nasubok na bersyon ng OAuth. Gayunpaman, para sa mga developer na naglalayong gumana sa mga malalaking pangalan sa online na mundo, ang pagpapatupad ng protocol na ito ay ligtas ay maaaring maging isang pangunahing kasanayan na itinakda sa hindi masyadong masyadong hinaharap.

Oauth 2.0 101