OAuth 2.0 is an authorization protocol for delegating controlled access to a protected resource without revealing the resource owner's credentials or other private details. section 25.1.3
The protocol separates access delegation from identity management. OpenID Connect builds on OAuth 2.0 to add authentication, conventions, discoverability, and identity information. section 25.1.3 section 25.7
A typical interactive authorization flow proceeds as follows:
- The application redirects the user to an identity provider. section 25.1.3
- The user signs in and approves the requested access, such as access to photos. section 25.1.3
- The provider redirects back with an authorization code, which the application uses with its client secret to obtain access. section 25.1.3
Printing dog photos
A user asks dogphotos.com to print photos stored on Facebook. Instead of giving dogphotos.com Facebook credentials, the user signs in at Facebook, approves access to photos, and lets dogphotos.com receive delegated access. section 25.1.3
Follow the authorization-code sequence from the application redirect through user consent and the provider callback. section 25.1.3
OAuth 2.0 defines multiple grant types. Authorization code with PKCE is the common interactive choice, while client credentials suits machine-to-machine API calls. section 25.7








