OAuth 2.0 RFC Reference
Core RFCs
OAuth 2 Bearer Token Usage (6750)
OAuth 2 Bearer Token Usage (6750)
OAuth 2 Authorization Framework (6749)
OAuth 2 Authorization Framework (6749)
Threat Model and Security Considerations (6819)
Threat Model and Security Considerations (6819)
This document gives additional security considerations for OAuth, beyond those in the OAuth 2.0 specification, based on a comprehensive threat model for the OAuth 2.0 protocol. This document is not an Internet Standards Track specification; it is published for informational purposes.
Proof Key for Code Exchange (PKCE - 7636)
Proof Key for Code Exchange (PKCE - 7636)
Device Authorization Grant (Device Code Flow - 8628)
Device Authorization Grant (Device Code Flow - 8628)
The OAuth 2.0 device authorization grant is designed for Internet- connected devices that either lack a browser to perform a user-agent- based authorization or are input constrained to the extent that requiring the user to input text in order to authenticate during the authorization flow is impractical. It enables OAuth clients on such devices (like smart TVs, media consoles, digital picture frames, and printers) to obtain user authorization to access protected resources by using a user agent on a separate device.
Authorization Request Extensions
JWT-Secured Authorization Request (JAR - 9101)
JWT-Secured Authorization Request (JAR - 9101)
The authorization request in OAuth 2.0 described in RFC 6749 utilizes query parameter serialization, which means that authorization request parameters are encoded in the URI of the request and sent through user agents such as web browsers. While it is easy to implement, it means that a) the communication through the user agents is not integrity protected and thus, the parameters can be tainted, b) the source of the communication is not authenticated, and c) the communication through the user agents can be monitored. Because of these weaknesses, several attacks to the protocol have now been put forward. This document introduces the ability to send request parameters in a JSON Web Token (JWT) instead, which allows the request to be signed with JSON Web Signature (JWS) and encrypted with JSON Web Encryption (JWE) so that the integrity, source authentication, and confidentiality properties of the authorization request are attained. The request can be sent by value or by reference.
Pushed Authorization Requests (PAR - 9126)
Pushed Authorization Requests (PAR - 9126)
This document defines the pushed authorization request (PAR) endpoint, which allows clients to push the payload of an OAuth 2.0 authorization request to the authorization server via a direct request and provides them with a request URI that is used as reference to the data in a subsequent call to the authorization endpoint.
Client Authentication
Assertion Framework for Client Authentication and Authorization Grants (7521)
Assertion Framework for Client Authentication and Authorization Grants (7521)
This specification provides a framework for the use of assertions with OAuth 2.0 in the form of a new client authentication mechanism and a new authorization grant type. Mechanisms are specified for transporting assertions during interactions with a token endpoint; general processing rules are also specified. The intent of this specification is to provide a common framework for OAuth 2.0 to interwork with other identity systems using assertions and to provide alternative client authentication mechanisms. Note that this specification only defines abstract message flows and processing rules. In order to be implementable, companion specifications are necessary to provide the corresponding concrete instantiations.
SAML 2.0 Profile for Client Authentication and Authorization Grants (7522)
SAML 2.0 Profile for Client Authentication and Authorization Grants (7522)
This specification defines the use of a Security Assertion Markup Language (SAML) 2.0 Bearer Assertion as a means for requesting an OAuth 2.0 access token as well as for client authentication.
JWT Profile for Client Authentication and Authorization Grants (7523)
JWT Profile for Client Authentication and Authorization Grants (7523)
This specification defines the use of a JSON Web Token (JWT) Bearer Token as a means for requesting an OAuth 2.0 access token as well as for client authentication.
Mutual-TLS Client Authentication and Certificate-Bound Access Tokens (mTLS - 8705)
Mutual-TLS Client Authentication and Certificate-Bound Access Tokens (mTLS - 8705)
Proof of Possession
Mutual-TLS Client Authentication and Certificate-Bound Access Tokens (mTLS - 8705)
Mutual-TLS Client Authentication and Certificate-Bound Access Tokens (mTLS - 8705)
Demonstrating of Proof of Possession at the Application Layer (draft-ietf-oauth-dpop)
Demonstrating of Proof of Possession at the Application Layer (draft-ietf-oauth-dpop)
This document describes a mechanism for sender-constraining OAuth 2.0 tokens via a proof-of-possession mechanism on the application level. This mechanism allows for the detection of replay attacks with access and refresh tokens.
Proof-of-Possession Key Semantics for JWT (7800)
Proof-of-Possession Key Semantics for JWT (7800)
This specification describes how to declare in a JSON Web Token (JWT) that the presenter of the JWT possesses a particular proof-of- possession key and how the recipient can cryptographically confirm proof of possession of the key by the presenter. Being able to prove possession of a key is also sometimes described as the presenter being a holder-of-key.
Token Management
Token Introspection (7662)
Token Introspection (7662)
Token Revocation (7009)
Token Revocation (7009)
This document proposes an additional endpoint for OAuth authorization servers, which allows clients to notify the authorization server that a previously obtained refresh or access token is no longer needed. This allows the authorization server to clean up security credentials. A revocation request will invalidate the actual token and, if applicable, other tokens based on the same authorization grant.
Token Exchange (8693)
Token Exchange (8693)
This specification defines a protocol for an HTTP- and JSON-based Security Token Service (STS) by defining how to request and obtain security tokens from OAuth 2.0 authorization servers, including security tokens employing impersonation and delegation.
Tag @pamelarosiedee on twitter if you see problems
Tag @pamelarosiedee on twitter if you see problems
View on mobile
Explore other Linktrees
Newt
@newton
straycats
@straycats
rachelscanlon
@rachelscanlon
Melissa Becraft
@melissabecraft
Jenn Leuke
@jenneatsgoood
Popcast
@popcast
Billie Eilish
@billieeilish
morepurposepod
@morepurposepod
Sabrina Carpenter
@sabrinacarpenter
breakingrust
@breakingrust
previous
next
Discover more
See all
@gpodafer
@joshhugo.tactical
@shuhaib__zero_to_hero__
@simomaltaparty
@kkillustration
@cuponsedescontos_black
@dominationstudio
@vwdrivergear
@plasticamie
@melyneokami
@guskimports
@swiss.1876
@BlueHaleHospedagem
@romanthomasmedia
@anastnotes
@ebaministerio1987
@serranocafe
@natemorrison
@mura.space
@advluisgoncalves
@teachermanu.ingles
@klinikbidansusy
@mariannot_
@route46motoclub
@mandergrams
@shreyaad
@TuanHaiyumSalim
@grimriypurr
@victoryleisurehomes
@bjservs
@abbygumpper
@lash.designher
@Language.access
@alpeso_ec
@marjopott
@tyson.allred
@Anime_Blog_Ita_Links
@oaklandfortunefactory
@lollydfl
@voyoustreams
@honeybodyoficial
@Priscilia.Mawonso
@flexyoga
@angelrivasmusica
@CatShopMiau