Skip to main content

IBM SSO Self-Service Provisioner

Project description

ibm-sso

When using SSO Self-Service Provisioner for single sign-on, ibm-sso can make your work easier.

Currently only supports fastapi applications.

Getting Started

pip install ibm-sso

Usage

  1. Add ibm-sso to requirements.txt file

    ibm-sso==0.0.1
    
  2. Install ibm-sso from requirements.txt file

    pipenv install -r requirements.txt
    
  3. Set environment variables

    Refer to the sample directory.

  4. Import ibm-sso in startup file

    from starlette.middleware.sessions import SessionMiddleware
    
    app = FastAPI()
    
    @app.exception_handler(OAuthError)
    async def oauth_error_exception_handler(request, exc: OAuthError):
        return JSONResponse(content={'detail': exc.error}, status_code=status.HTTP_401_UNAUTHORIZED)
    
    app.add_middleware(SessionMiddleware, secret_key='Change Me to Random Secret!')
    
    app.include_router(authorize_router, prefix='/oauth2', tags=['Authorize API'])
    
  5. Now, your application has added SSO authentication functionality.

Sample

There is a sample in the sample directory that can be run directly. You can start from the sample to learn how to use ibm-sso.

Deploy project(memo for developer)

# https://test.pypi.org/
expect interactive_deploy_test.expect

# https://pypi.org/
# expect interactive_deploy.expect

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[0.0.1] - 2023-11-28

  • First commit

[0.0.2] - 2023-12-06

  • Add avatar to UserInfoVO

[0.0.3] - 2023-12-06

Added

  • Add avatar to UserInfoVO when the user authenticates.

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

ibm_sso-0.0.3.tar.gz (8.6 kB view hashes)

Uploaded Source

Built Distribution

ibm_sso-0.0.3-py3-none-any.whl (8.7 kB view hashes)

Uploaded Python 3

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