1B/ OAuth 101 / Vittorio
From IIW
Session 1B
OAuth 101 - an IIW 101 Session
Session Convener: Vittorio
Notes-taker(s):
Tags / links to resources / technology discussed, related to this session:
- Goal — to help absolute beginners to learn about OAuth2.
- The session will discuss terminology, common scenarios, framework, etc.
- The session will not discuss Centralized/Decentralized Identity or SSI.
- Comments on SSI: SSI products are likely to be successful if they are built upon existing technologies.
Discussion notes, key understandings, outstanding questions, observations, and, if appropriate to this discussion: action items, next steps:
NOTES FROM IIW #33 Session led by Vittorio
Scenario 1: Naive Approach
- A user signs in to Linkedin
- Linkedin asks a user to send invitations to all of users’ contacts via their gmail.
- User sends their gmail login credential to Linkedin so that Linkedin can send emails on the user’s behalf
- This naive approach is problematic as Linkedin will get unlimited access to the user’s account
Scenario 2: OAuth 2 Approach (Delegated Authorization)
- Linkedin is registered to the Authorization Server
- Linkedin writes an authorization message to the Authorization Server, asking to send emails for the user
- User’s gmail login credential is sent (correctly) to the Gmail server (Resource Server)
- Authorization Server then send a Consent Dialogue to the user asking for the user’s permission to perform the request
- If the user consent, the <authz code> will be sent to Linkedin
- Linkedin then sent <authz code> to the authorization server to obtain an access token
- Linkedin sends the access token to Gmail. Gmail will only allow Linkedin to perform the task as specified in the access token and nothing else. Hence, *Linkedin will be able to perform only the task that the user consented.
Comments on standards
- Conventional standards arise from pre-existing technologies where lots of people use similar approaches to solve the same problem. Then, these people come together to write a standard.
- Nowadays, some standards arise from non-existing nice-to-have technologies.
Note
- OAuth is not a layer where identity federation occurs.
- Other applications/standards are built on top on OAuth to provide identity federation