idpyoidc
This project is a Python implementation of everything OpenID Connect and OAuth2.
Introduction
idpyoidc is the 2nd layer in the JwtConnect stack (cryptojwt, idpyoidc). As OIDC OP Idpy implements the following standards:
- OpenID Connect Core 1.0 incorporating errata set 1
- Web Finger
- OpenID Connect Discovery 1.0 incorporating errata set 1
- OpenID Connect Dynamic Client Registration 1.0 incorporating errata set 1
- OpenID Connect Session Management 1.0
- OpenID Connect Back-Channel Logout 1.0
- OpenID Connect Front-Channel Logout 1.0
- OAuth2 Token introspection
- OAuth 2.0 Form Post Response Mode
It also comes with the following add_on modules.
- Custom scopes, that extends OIDC standard ScopeClaims
- Proof Key for Code Exchange by OAuth Public Clients (PKCE)
- OAuth2 PAR
- OAuth2 RAR
- OAuth2 DPoP
- OAuth 2.0 Authorization Server Issuer Identification
Usage
If you want to add or replace functionality the official documentation should be able to tell you how.
If you are just going to build a standard OP you only have to understand how to write your configuration file.
In example/ folder you'll find some complete examples based on flask and django.
Please read the Official Documentation for getting usage examples and further informations.
Contribute
Your contribution is welcome, no question is useless and no answer is obvious, we need you.
Contribute as end user
Please open an issue if you've discoveerd a bug or if you want to ask some features.
Contribute as developer
Please open your Pull Requests on the develop branch. Please consider the following branches:
- main: where we merge the code before tag a new stable release.
- develop: where we push our code during development.
- other-custom-name: where a new feature/contribution/bugfix will be handled, revisioned and then merged to dev branch.
Certifications
License
The entire project code is open sourced and therefore licensed under the Apache 2.0.
Metadata
Release files for idpyoidc 5.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| idpyoidc-5.0.0.tar.gz | 391.6 kB | Without provenance | Details for idpyoidc-5.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| idpyoidc-5.0.0-py3-none-any.whl | Python 3 | none | any | Details for idpyoidc-5.0.0-py3-none-any.whl |
Total release size: 673.5 kB
Release files / idpyoidc-5.0.0.tar.gz
| Download URL | idpyoidc-5.0.0.tar.gz |
|---|---|
| Size | 391.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1a14c34abc8d620abce00df94d3718a7d453b8b0b1429186506d91db52466f04
|
|
BLAKE2b-256 checksum How to use checksums |
b30dcb409d1404bfa29afb6ca4a01a1c8b4fb6fd24b1fc41afbd3c8dcff021d6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.9.20
|
Release files / idpyoidc-5.0.0-py3-none-any.whl
| Download URL | idpyoidc-5.0.0-py3-none-any.whl |
|---|---|
| Size | 281.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7baae537663e55cce11f8151c1a234f1a8b218762aab2edd9d07bc8d16174776
|
|
BLAKE2b-256 checksum How to use checksums |
a62026bb49aed85801cc54c49e80b28025d3a5ea136e4340abb45e91182e290f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.9.20
|
Security for idpyoidc 5.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.