reading-notes


Project maintained by mr-atta Hosted on GitHub Pages — Theme by mattgraham

programming

OAuth

## What is OAuth?

OAuth allows websites and services to share assets among users. It is widely accepted, but be aware of its vulnerabilities.

## Give an example of what using OAuth would look like.

The simplest example of OAuth is when you go to log onto a website and it offers one or more opportunities to log on using another website’s/service’s logon. You then click on the button linked to the other website, the other website authenticates you, and the website you were originally connecting to logs you on itself afterward using permission gained from the second website.

## How does OAuth work? What are the steps that it takes to authenticate the user?

## What is OpenID?

is a simple identity layer on top of the OAuth 2.0 protocol. It allows Clients to verify the identity of the End-User based on the authentication performed by an Authorization Server, as well as to obtain basic profile information about the End-User in an interoperable and REST-like manner.



<hr>

Authorization and Authentication flows

## What is the difference between authorization and authentication?

access to a resource is protected by both authentication and authorization. If you can’t prove your identity, you won’t be allowed into a resource. And even if you can prove your identity, if you are not authorized for that resource, you will still be denied access.

Authorization and Authentication

## What is Authorization Code Flow?

## What is Authorization Code Flow with Proof Key for Code Exchange (PKCE)?

## What is Implicit Flow with Form Post?

Implicit Flow with Form Post flow uses OIDC to implement web sign-in that is very similar to the way SAML and WS-Federation operates. The web app requests and obtains tokens through the front channel, without the need for secrets or extra backend calls.

## What is Client Credentials Flow?

With machine-to-machine (M2M) applications the system authenticates and authorizes the app rather than a user. For this scenario, typical authentication schemes like username + password or social logins don’t make sense. Instead, M2M apps use the Client Credentials Flow (defined in OAuth 2.0 RFC 6749, section 4.4).

## What is Device Authorization Flow?

The Device Authorization Flow contains two different paths; one occurs on the device requesting authorization and the other occurs in a browser. The browser flow path, wherein a device code is bound to the session in the browser, occurs in parallel to part of the device flow path.

This avoids a poor user experience for devices that do not have an easy way to enter text

## What is Resource Owner Password Flow?

requests that users provide credentials (username and password), typically using an interactive form. Because credentials are sent to the backend and can be stored for future use before being exchanged for an Access Token.

not recommend it.

♥️from ♥️from ♥️from



<hr>

♥️from ♥️from