Skip to main content

Python Identity Provider package

Overview#

The packages in the Aserto Python SDK use an Identity abstraction to represent the identity of the accessing user in an authorization request. The aserto-idp package provides some utilities that eases the creation of Identity objects for different Identity Providers.

Installation#

Using pip:

pip install aserto-idp

Using Poetry:

poetry add aserto-idp

Usage#

note

Currently Aserto supports Auth0 as an identity provider. More are on the way!

Creating an Auth0 Identity#

from aserto import Identityfrom aserto_idp.auth0 import AccessTokenError, generate_oauth_subject_from_auth_header
try:    subject = await generate_oauth_subject_from_auth_header(        authorization_header=AUTHORIZATION_HEADER,        domain=AUTH0_DOMAIN,        client_id=AUTH0_CLIENT_ID,        audience=AUTH0_AUDIENCE,    )
    identity = Identity(type="SUBJECT", subject=subject)except AccessTokenError:    # An `Identity` representing an anonymous/logged-out user    identity = Identity(type="NONE")