1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
|
Globus Auth
===========
.. currentmodule:: globus_sdk
There are several types of client object for communicating with the Globus Auth
service. A client object may represent your application (as the driver of
authentication and authorization flows), in which case the
:class:`NativeAppAuthClient` or :class:`ConfidentialAppAuthClient` classes should
generally be used.
Client Classes
--------------
.. autoclass:: AuthClient
:members:
:member-order: bysource
:show-inheritance:
.. autoclass:: AuthLoginClient
:members:
:member-order: bysource
:show-inheritance:
.. autoclass:: NativeAppAuthClient
:members:
:member-order: bysource
:show-inheritance:
:exclude-members: error_class
.. autoclass:: ConfidentialAppAuthClient
:members:
:member-order: bysource
:show-inheritance:
:exclude-members: error_class
Helper Objects
--------------
The :class:`IdentityMap` is a specialized object which aids in the particular
use-case in which the Globus Auth :meth:`AuthClient.get_identities` API is being used to
resolve large numbers of usernames or IDs. It combines caching, request
batching, and other functionality.
..
We set special-members so that __getitem__ and __delitem__ are included.
But then we need to exclude specific members because we don't want people
reading about __weakref__ in our docs.
.. autoclass:: IdentityMap
:members:
:special-members:
:exclude-members: __dict__,__weakref__
:show-inheritance:
.. autoclass:: IDTokenDecoder
:show-inheritance:
.. autoclass:: DependentScopeSpec
Auth Responses
--------------
.. autoclass:: OAuthTokenResponse
:members:
:show-inheritance:
.. autoclass:: OAuthAuthorizationCodeResponse
:members:
:show-inheritance:
.. autoclass:: OAuthRefreshTokenResponse
:members:
:show-inheritance:
.. autoclass:: OAuthClientCredentialsResponse
:members:
:show-inheritance:
.. autoclass:: OAuthDependentTokenResponse
:members:
:show-inheritance:
.. autoclass:: GetConsentsResponse
:members:
:show-inheritance:
.. autoclass:: GetIdentitiesResponse
:members:
:show-inheritance:
Errors
------
.. autoexception:: AuthAPIError
OAuth2 Flow Managers
--------------------
These objects represent in-progress OAuth2 authentication flows.
Most typically, you should not use these objects directly, but rather rely on the
:class:`NativeAppAuthClient` or :class:`ConfidentialAppAuthClient` objects
to manage these for you through their ``oauth2_*`` methods.
All Flow Managers inherit from the
:class:`GlobusOAuthFlowManager \
<.GlobusOAuthFlowManager>` abstract class.
They are a combination of a store for OAuth2 parameters specific to the
authentication method you are using and methods which act upon those parameters.
.. autoclass:: globus_sdk.services.auth.GlobusNativeAppFlowManager
:members:
:show-inheritance:
.. autoclass:: globus_sdk.services.auth.GlobusAuthorizationCodeFlowManager
:members:
:show-inheritance:
Abstract Flow Manager
~~~~~~~~~~~~~~~~~~~~~
.. autoclass:: globus_sdk.services.auth.flow_managers.GlobusOAuthFlowManager
:members:
:show-inheritance:
|