AWS OpenID Credential Broker
OpenID Based Identity Credential Broker for AWS (Built as an alternative to AWS SSO to support OpenID Federation)
Broker authentication flow
sequenceDiagram;
participant User;
participant Broker;
participant IDP;
participant AWS;
User -->> Broker: Login via IDP
Broker -->> IDP: Forward Auth Request
IDP -->> Broker: IDP Login Successful
User -->> Broker: Open AWS Console
Broker -->> AWS: Request Session
AWS -->> Broker: Login Successfull
Broker -->> Browser: Open AWS Console
Getting Started
Quick Start with docker compose
docker-compose up -d
Prerequisites
- python3
- virtualenv
- docker
- docker-compose
Installing
A step by step series of examples that tell you how to get a development env running
Clone the Project
git clone https://github.com/Rishang/aws-oidc-broker.git
Initialzing virtualenv
cd aws-oidc-broker
python -m venv venv
source ./venv/bin/activate
Installing Dependencies
pip install -r requirements.txt
Configure .env file or perform export of those variables
cp .env.example .env
Configure environment variables as required.
Environment Variables for KEYCLOAK integration
| VARIABLE NAME | Example VALUE | DESCRIPTION | REQUIRED |
|---|---|---|---|
KEYCLOAK_CLIENT_ID |
aws-oidc |
Client ID | yes |
KEYCLOAK_WELLKNOWN |
https://example.dev/realms/test/.well-known/openid-configuration |
Keycloak well-known openid URL | yes |
APP_SECRET |
!apppasswd |
optional env variable to set encrytion secret | no |
TITLE |
Example Broker |
Title to display on Broker UI | no |
Deployment
Add additional notes about how to deploy this on a live system
Built With
Release files for aws-oidc-broker 0.1.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 | |
|---|---|---|---|
| aws_oidc_broker-0.1.0.tar.gz | 27.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aws_oidc_broker-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 58.9 kB
Release files / aws_oidc_broker-0.1.0.tar.gz
| Download URL | aws_oidc_broker-0.1.0.tar.gz |
|---|---|
| Size | 27.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1589ea1f00f71f2e99205d93dcb28090ea4238594689217e037b2a60e0e025f6
|
|
BLAKE2b-256 checksum How to use checksums |
f30c17cfd67fa83cb6c1b757036e592b9fd1dc401271e9d8d7538c90a0c4768c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.3.2 CPython/3.8.16 Linux/5.15.0-1031-azure
|
Release files / aws_oidc_broker-0.1.0-py3-none-any.whl
| Download URL | aws_oidc_broker-0.1.0-py3-none-any.whl |
|---|---|
| Size | 31.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f745e7196e0376bcdb71b213b636ed9668c32fedbcb530ef10f021ab1d54f442
|
|
BLAKE2b-256 checksum How to use checksums |
7449d02d074990dc8824be496af08d1a47654c99a7b8e74477ae68c35f99124c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.3.2 CPython/3.8.16 Linux/5.15.0-1031-azure
|