oidfed-collector: The OpenID Federation Entity Collection Service
This project implements the OpenID Federation Entity Collection specification.
Installation
To install the oidfed-collector, you can use pip or Docker.
Using pip
pip install oidfed_collector
Using Docker
docker pull ddgu/oidfed-collector:latest
Configuration
The service accepts a configuration file in JSON format. You can specify the configuration file using the CONFIG environment variable. By default, it looks for config.json in the current directory.
The repository includes an example configuration file config.json. You can modify it according to your needs. Here is an example configuration with the default values:
{
"port": 12345,
"log_level": "info",
"api_base_url": "/collection",
"cache": {
"ttl": 300,
"max_size": 1000,
"cleanup_interval": 60
},
"session": {
"max_concurrent_requests": 100,
"ttl": 30
}
}
- The
portspecifies the port on which the service will run. - The
log_levelcan be set todebug,info,warning,error, orcritical. - The
api_base_urlis the base URL for the API endpoints. - The
cachesection configures the caching behavior, including time-to-live (ttl), maximum size in items, and cleanup interval. - The
sessionsection configures HTTP session management, including maximum concurrent requests and session time-to-live (ttl).
Running the Service
To run the service, you can run it directly as a Python module or from a Docker container.
Using Python
python -m oidfed_collector
Using Docker
docker run -d -p 12345:12345 -v $(pwd)/config.json:/config.json ddgu/oidfed-collector:latest
We also provide a docker-compose.yaml file for easier deployment, which mounts the configuration file from the current directory. Modify to your needs and use it as follows:
docker-compose up -d
Usage
Once the service is running, you can access the API at http://localhost:12345/collection. The service supports a single endpoint for entity collection as defined in the OpenID Federation Entity Collection specification.
Development
To contribute to the development of oidfed-collector, you can clone the repository and install the dependencies using poetry:
git clone https://github.com/dianagudu/oidfed-collector.git
cd oidfed-collector
poetry install
You can then run the service locally:
poetry run oidfed-collector
If you wish to build the Docker image locally, note that we provide a multi-stage Dockerfile, with separate targets for development and production. You can build it with:
docker build --target development -t oidfed-collector:dev .
docker build --target production -t oidfed-collector:latest .
License
This project is licensed under the MIT License.
This project includes code from fedservice (https://github.com/SUNET/fedservice), licensed under the Apache License, Version 2.0. Modifications were made to adapt it for this project.
This work was started in and supported by the Geant Trust & Identity Incubator.
Metadata
Release files for oidfed-collector 0.3.1
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 |
|---|---|---|---|---|
| oidfed_collector-0.3.1.tar.gz | 19.5 kB | Without provenance | Details for oidfed_collector-0.3.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| oidfed_collector-0.3.1-py3-none-any.whl | Python 3 | none | any | Details for oidfed_collector-0.3.1-py3-none-any.whl |
Total release size: 43.3 kB
Release files / oidfed_collector-0.3.1.tar.gz
| Download URL | oidfed_collector-0.3.1.tar.gz |
|---|---|
| Size | 19.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0b04f8c55c8f49cb8108d61b1d7eb5ac4a82b5c0a63c3e4528b191f947feb0ce
|
|
BLAKE2b-256 checksum How to use checksums |
154e693507affb936b602130bb19f492ac63cfe7a8815180aa93cca9939941e7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.4 CPython/3.11.13 Linux/6.11.0-1018-azure
|
Release files / oidfed_collector-0.3.1-py3-none-any.whl
| Download URL | oidfed_collector-0.3.1-py3-none-any.whl |
|---|---|
| Size | 23.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bfeec2eb7366aaf5effd6cf8cff371beb0946955f1121ff7c757b9f69e3a7600
|
|
BLAKE2b-256 checksum How to use checksums |
906e41f1aba50a5832e94d796dd7c7d90ce3b7289f28fe6b655eabdd7e2eac34
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.4 CPython/3.11.13 Linux/6.11.0-1018-azure
|
Security for oidfed-collector 0.3.1
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.