codekingpro/portable-devtools
114k
1"""2 authlib.oauth2.rfc6749.grants3 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~4 5 Implementation for `Section 4`_ of "Obtaining Authorization".6 7 To request an access token, the client obtains authorization from the8 resource owner. The authorization is expressed in the form of an9 authorization grant, which the client uses to request the access10 token. OAuth defines four grant types:11 12 1. authorization code13 2. implicit14 3. resource owner password credentials15 4. client credentials.16 17 It also provides an extension mechanism for defining additional grant18 types. Authlib defines refresh_token as a grant type too.19 20 .. _`Section 4`: https://tools.ietf.org/html/rfc6749#section-421"""22 23# flake8: noqa24 25from .base import BaseGrant, AuthorizationEndpointMixin, TokenEndpointMixin26from .authorization_code import AuthorizationCodeGrant27from .implicit import ImplicitGrant28from .resource_owner_password_credentials import ResourceOwnerPasswordCredentialsGrant29from .client_credentials import ClientCredentialsGrant30from .refresh_token import RefreshTokenGrant31 32__all__ = [33 'BaseGrant', 'AuthorizationEndpointMixin', 'TokenEndpointMixin',34 'AuthorizationCodeGrant', 'ImplicitGrant',35 'ResourceOwnerPasswordCredentialsGrant',36 'ClientCredentialsGrant', 'RefreshTokenGrant',37]38 