Skip to main content

Redis-based session storage for oic library

Project description

pyoidc-redis-session-backend

This repository contains source code for a Redis-based session storage backend for the oic Python library.

Installation

This project hasn't been released to PyPi yet, but you can find the test package in TestPyPi: https://test.pypi.org/project/pyoidc-redis-session-backend-alehuo/.

Usage

A ready-to-run project is located at https://github.com/alehuo/pyoidc-redis-session-backend-example

Below is an example piece of code that initializes a Redis client which is then used to create an instance of RedisSessionBackend. After that, a Consumer is created which is then configured to use the Redis session backend as its backend.

import redis
from pyoidc_redis_session_backend import RedisSessionBackend
from oic.oic.consumer import Consumer
from oic.utils.authn.client import ClientSecretBasic, ClientSecretPost

redis_client = redis.Redis("localhost", "6379")
# Pass the redis client into the Redis session backend
backend = RedisSessionBackend(redis_client)
# Create an example consumer with example config
consumer = Consumer(backend, {
    "authz_page": "/auth/callback", # Callback URL of your app
    "response_type": "code",
},
    client_config={
    "client_id": "your_client_id", # Client ID
    "client_authn_method": {
        'client_secret_post': ClientSecretPost,
        'client_secret_basic': ClientSecretBasic
    }
})
consumer.provider_config("oidc_server_url") # OIDC server URL
consumer.set_client_secret("your_client_secret") # Client secret

Development

To initialize the development environment, run:

  1. Run python3 -m venv env
  2. Run source env/bin/activate
  3. Run pip install -r requirements.txt

Running tests

Run tests with python -m pytest tests/.

Contributions

Contributions to this repository are welcome.

License

This project is licensed with MIT license.

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

pyoidc-redis-session-backend-1.0.1.tar.gz (3.0 kB view hashes)

Uploaded Source

Built Distribution

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