Browser ¡Support ¡for ¡the ¡Open ¡ Authoriza4on ¡(OAuth) ¡Protocol ¡ hGp://www.w3.org/2011/iden4ty-‑ws/papers/idbrowser2011_submission_32.pdf ¡ ¡ Hannes ¡Tschofenig, ¡Barry ¡Leiba, ¡ Blaine ¡Cook, ¡Rob ¡Van ¡Eijk ¡
Agenda ¡ • Authen4ca4on ¡Mechanisms ¡ • JavaScript ¡Crypto ¡Library ¡Support ¡ • Authoriza4on ¡Interface ¡ • Moving ¡Crypto ¡Into ¡the ¡Browser ¡
Authen4ca4on ¡Mechanisms ¡ • Many ¡iden4ty ¡management ¡protocols ¡treat ¡the ¡ authen4ca4on ¡exchange ¡out ¡of ¡scope ¡ – So ¡does ¡OAuth ¡ • Problems: ¡ ¡ – Authen4ca4on ¡creden4als ¡being ¡used ¡are ¡of ¡poor ¡quality ¡(low ¡ entropy ¡secrets) ¡ – Enrollment ¡of ¡strong ¡creden4als ¡not ¡implemented ¡in ¡browsers ¡ (e.g. ¡enrollment ¡of ¡OTP ¡mechanisms) ¡ ¡ – Authen4ca4on ¡mechanisms ¡being ¡used ¡on ¡the ¡Web ¡today ¡are ¡ preGy ¡weak. ¡ – There ¡is ¡no ¡authen4ca4on ¡framework ¡that ¡allows ¡for ¡easily ¡ exchangeable ¡authen4ca4on ¡methods. ¡ ¡ – Other ¡problem ¡(but ¡not ¡related ¡to ¡lack ¡of ¡standardiza4on): ¡weak ¡ iden4ty ¡proofing ¡ • Examples ¡to ¡look ¡at: ¡GSS-‑API, ¡SASL, ¡EAP, ¡PSKC ¡ ¡ ¡ What ¡mechanisms ¡should ¡browser ¡support? ¡ ¡
Authoriza4on ¡Interface ¡
Authoriza4on ¡Interface, ¡cont. ¡
Authoriza4on ¡Interface, ¡cont. ¡ What ¡guidance ¡can ¡we ¡provide ¡to ¡developers ¡for ¡a ¡ consistent ¡permission ¡dialog ¡experience? ¡ ¡ What ¡is ¡the ¡role ¡of ¡the ¡browser ¡in ¡this ¡exchange? ¡
JavaScript ¡Crypto ¡Library ¡Support ¡ • JavaScript ¡is ¡an ¡essen4al ¡language ¡for ¡the ¡Web ¡ eco-‑system. ¡Increasingly ¡popular ¡also ¡on ¡the ¡ server-‑side. ¡ ¡ • Problem: ¡No ¡standardized ¡APIs ¡for ¡access ¡to ¡ cryptographic ¡func4ons ¡and ¡key ¡storage. ¡ • One ¡consequence: ¡Cryptographic ¡material ¡cannot ¡ be ¡kept ¡confiden4al ¡with ¡JavaScript-‑based ¡ clients. ¡ ¡ • Example: ¡ hGps://developer.mozilla.org/en/JavaScript_crypto ¡ ¡ Would ¡it ¡be ¡useful ¡to ¡standardize ¡a ¡ JavaScript ¡crypto ¡API? ¡ ¡
Moving ¡Crypto ¡Into ¡the ¡Browser ¡ • OAuth ¡protocol ¡design ¡is ¡impacted ¡by ¡the ¡capabili4es ¡ offered ¡by ¡browsers. ¡ • The ¡security ¡considera4ons ¡capture ¡this ¡quite ¡well: ¡ hGp://datatracker.ie_.org/doc/dra`-‑ie_-‑oauth-‑v2/ ¡ hGp://tools.ie_.org/html/dra`-‑lodderstedt-‑oauth-‑security ¡ • For ¡example, ¡ hGp://datatracker.ie_.org/doc/dra`-‑ie_-‑oauth-‑v2-‑ hGp-‑mac/ ¡suggests ¡a ¡MAC ¡based ¡authen4ca4on ¡ mechanism ¡that ¡can ¡also ¡be ¡used ¡to ¡implement ¡a ¡more ¡ secure ¡cookie/HTTP ¡state ¡management ¡mechanism. ¡ ¡ What ¡func@onality ¡can ¡we ¡put ¡into ¡ the ¡browser ¡plaAorm? ¡ ¡
Recommend
More recommend