Skip to main content

okta-token-fetcher

Provides a commandline script and package for getting an OKTA id_token by interacting with your browser via the commandline.

This script builds off of the dirty quick way to get a token from your browser stated here: https://developer.okta.com/docs/guides/implement-oauth-for-okta/main/#get-an-access-token-and-make-a-request .

This is done by opening a browser window that navigates to the auth server with localhost as the redirect_uri. There is an http server that is spun up for just long enough to handle the redirect request and get the id_token from the query parameters that are sent via window.hash (I suppose OKTA does this so that it can't be sent to the server itself). Tokens are cached in the OS keyring unless --no-cache is set.

Your OKTA application MUST have "http://localhost:8888" configured as one of the allowed redirect uri's for this tool to work.

As a terminal script:

usage: okta-fetch [-h] -i ISSUER -c CLIENT_ID [-s SCOPES] [-t TOKEN_TYPE] [--no-cache] [-S KEYCHAIN_SERVICE] [-u KEYCHAIN_USERNAME] [-r FINAL_REDIRECT] [-I]

options:
  -h, --help            show this help message and exit
  -i ISSUER, --issuer ISSUER
                        The auth server url. This should be only the domain and protocol. eg: https://mydomain.okta.com
  -c CLIENT_ID, --client-id CLIENT_ID
                        The client id to get a token for
  -s SCOPES, --scopes SCOPES
                        Comma delimited list of scopes to request
  -t TOKEN_TYPE, --token-type TOKEN_TYPE
                        The type of token to request
  --no-cache            Don't cache the token
  -S KEYCHAIN_SERVICE, --keychain-service KEYCHAIN_SERVICE
                        Service name to use when caching tokens to the OS keychain. Defaults to the issuer
  -u KEYCHAIN_USERNAME, --keychain-username KEYCHAIN_USERNAME
                        Username to use when caching tokens to the OS keychain. Defaults to the client ID
  -r FINAL_REDIRECT, --final-redirect FINAL_REDIRECT
                        This is where the browser will be redirected to at the end of the auth flow
  -I, --info            Print info about the token

    This script builds off of the dirty quick way to get a token from your browser stated here:
    https://developer.okta.com/docs/guides/implement-oauth-for-okta/main/#get-an-access-token-and-make-a-request .

    This is done by opening a browser window that navigates to the auth server with localhost as the redirect_uri. There
    is an http server that is spun up for just long enough to handle the redirect request and get the token from the
    query parameters that are sent via window.hash.

    Your OKTA application MUST have "http://localhost:8888" configured as one of the allowed redirect uri's for this tool to work.

Implemented in another script:

fetcher = OktaToken(
    issuer="https://my-okta-org.okta.com/8a88fje02348ljajr8,
    client_id=my-oidc-app-client-id,
    final_redirect="https://github.com",
    token_type="token",
    use_keychain=True,
)
print(fetcher.token)

Release files for okta-token-fetcher 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for okta-token-fetcher 0.1.2
File Size Uploaded
okta_token_fetcher-0.1.2.tar.gz 5.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for okta-token-fetcher 0.1.2
File Interpreter ABI Platform
okta_token_fetcher-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 12.0 kB

Release files / okta_token_fetcher-0.1.2.tar.gz

Download URL okta_token_fetcher-0.1.2.tar.gz
Size 5.3 kB
Tags Source
SHA-256 checksum
How to use checksums
9d470cea51ad83584998762c24a50dfde82bf1b793fa8bd638d357e59b627711
BLAKE2b-256 checksum
How to use checksums
7915a265e00ca5d7b6c521adf3bf639c56e1157c618a419021dc8c9a50a57426
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.1

Release files / okta_token_fetcher-0.1.2-py3-none-any.whl

Download URL okta_token_fetcher-0.1.2-py3-none-any.whl
Size 6.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a99c0f3e88a94830a5ed30ade6839fed7a303c419a99aef39dca19117c44cbce
BLAKE2b-256 checksum
How to use checksums
0286cadad109c18896142ac851ec60d6f18f2983786c2b486df99c516d514adf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.1

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page