140 likes | 150 Views
This paper explores the challenges of AAIs in distributed systems, presents the onedata global data access system, discusses autonomous entities in onedata, popular AAI technologies, and introduces macaroons as a better solution for delegation of authority. The benefits of macaroons in onedata are highlighted, including high security, ease of use, simpler authorization system, fine-grained permissions, and low storage and computational overheads.
E N D
Delegation of authority in distributed data access system Konrad Zemek, Łukasz Opioła, MichałWrzeszcz, Renata G. Słota, Łukasz Dutka, Jacek Kitowski ACC Cyfronet AGH Department of Computer Science,AGH - UST CGW 2015 Kraków, Poland, October 26-28, 2015
Agenda • AAIs in distributed systems - challenges • onedata – a global data access system • Autonomous entites in onedata • Popular technologies in AAI • Macaroons – better than cookies • Macaroons in onedata • Conclusions
AAIs in distributed systems: challenges • Services can be autonomous components • User identity and privileges must be verified • Some operations require delegation • User credentials must be passed in a secure manner AuthN – AuthenticatioN AuthZ – AuthoriZation
onedata • Global data access • Virtualizes access to files • Easy data sharing • Cooperation support • HPC support • Unifies heterogeneous storages into single data space • Highly distributed
Autonomous entities in onedata TRUST TRUST Access file Share file NO TRUST • No trust between providers • Need for delegation
Popular technologies in AAI • Certificates (Globus, X.509) • Depending on user awareness • Revocation handling may be problematic • SAML (Security Assertion Markup Language) • Complicated and heavyweight • High maintenance (in big systems) • Web cookies • Carry too much authority • No delegation mechanism
„Macaroons are better than cookies!” • The answer to onedata needs – macaroons (by Google): • Bearer tokens • Contextual confinement of authority (caveats) • Caveats cannot be removed and cannot increase authority • Limitable lifespan • Third party caveats • Safe delegation of authority • Serializable for easy passing
Macaroons in onedata • 1. Authentication macaroon • 2. Provider authorization macaroon • 3. Native client authorization macaroon
Macaroons in onedata • 1. Authentication macaroon • Proof of user’s identity and presence (active session) • Short lived • Issued by identity service (Global Registry, GR) • 2. Provider authorization macaroon • 3. Native client authorization macaroon
Macaroons in onedata • 1. Authentication macaroon • 2. Provider authorization macaroon • Long lived • Allows interacting with GR on behalf of the user • Contains a 3rd party caveat – needs authentication macaroon • 3. Native client authorization macaroon
Macaroons in onedata • 1. Authentication macaroon • 2. Provider authorization macaroon • 3. Native client authorization macaroon • Long lived • Given to the user, confidential • Does not require authentication but limited authority • Allows read-only access to some GR metadata • Authority delegated by further confinement
Macaroons vs autonomous entitiesin onedata https://onedata.org/share/ASHsdf980ycx… https://onedata.org/share/ASHsdf980ycx… 1 2 TRUST TRUST 3 Share file AuthN Access file 5 AuthZ 6 4 4 NO TRUST 5 6
Conclusions • Macaroons in onedata ensure: • High security (macaroons are cryptographically strong) • Ease of use and transparency to the users • Simpler authorization system • Fine-grained permissions • Low storage and computational overheads
Thank you onedata homepage: https://www.onedata.org