Skip to main content

No project description provided

Project description

girder-cli-oauth-client

A Python library for performing OAuth login to a Girder 4 (Django) server.

Description

This provides support for authenticating with Girder 4 servers, using the OAuth2.0 Authorization Code Grant with PKCE flow and out-of-band redirection.

Usage

  • Install the library:

    pip install girder-cli-oauth-client
    
  • Instantiate an OauthClient with your application-specific configuration:

    from girder_cli_oauth_client import GirderCliOAuthClient
    
    oauth_client = GirderCliOAuthClient(
        'http://localhost:8000/oauth/',
        '1ohsuyWIx9fEsJhmAH2AWGNUqd8Wsd7LHyongtVy',
        'my_oauth_application',
    )
    
  • Call login when it's time to start a login flow:

    oauth_client.login()  # open the browser to login and wait for a code
    
  • At the start of every application start, unconditionally call maybe_restore_login, to attempt to restore a login state; this will no-op if no login is present.

    oauth_client.maybe_restore_login()
    
  • Include these headers with every API request:

    requests.get('http://localhost:8000/api/users/me', headers=oauth_client.auth_headers)
    
  • Call logout to clear any active login:

    oauth_client.logout()
    

Example app

This repository comes bundled with an example application. Run it with:

git clone https://github.com/girder/girder-cli-oauth-client.git
pip install -e '.[dev]'
cd example
python cli.py login
python cli.py me

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

girder-cli-oauth-client-0.1.0.tar.gz (7.7 kB view details)

Uploaded Source

Built Distribution

girder_cli_oauth_client-0.1.0-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

Details for the file girder-cli-oauth-client-0.1.0.tar.gz.

File metadata

  • Download URL: girder-cli-oauth-client-0.1.0.tar.gz
  • Upload date:
  • Size: 7.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2

File hashes

Hashes for girder-cli-oauth-client-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e2349393ec9d0dc71a9115f2908d4bef8beeb4ead89abf820ae04b9495b01f8a
MD5 f1b76bb54578abdb5ea5dc1cc8132c97
BLAKE2b-256 76dc6c39154b5f527670dbe9948da9d4c783b0e0d1712a1f52933b44a5d8abce

See more details on using hashes here.

File details

Details for the file girder_cli_oauth_client-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: girder_cli_oauth_client-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2

File hashes

Hashes for girder_cli_oauth_client-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 215a52ff2e94254a61a1c1a82eb90a12707ea650288408a93ec1b67a5d90f4df
MD5 e9d19ad26b50cbf8a9c826e477d6cbb5
BLAKE2b-256 8fa160994be94eea7de31370b4143e3246cf2a75af2525e25b69a89fd9a64c32

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page