OIDC auth in fastapi using a decorator
Project description
OpenID Connect for FastAPI
prokie-fastapi-oidc-auth
is an extension to
FastAPI that allows you to add OpenID
Connect based authentication for your endpoints within minutes.
Installation
pip install prokie-fastapi-oidc-auth
Keycloak settings
Admin
admin_username = "admin"
admin_password = "admin"
host = "http://localhost:8080"
Realm
realm = "myrealm"
Client
Set the Access Type
to confidential
and Standard Flow Enabled
to
ON
. Make sure that Valid Redirect URIs
contain the URI of your app
or *
if you want to allow all URIs. Make sure Client Protocol
is set
to openid-connect
.
client = "myclient"
secret = "xZEIb4wGoWseNumHJ4Vb7pYvdX3SIQeg"
User
user_username = "myuser"
user_password = "myuser"
How to use
See test.py for a complete example.
Testing
To start a Keycloak instance for testing, run the following command:
docker run -d -p 8080:8080 \
-e KEYCLOAK_USER=admin \
-e KEYCLOAK_PASSWORD=admin \
-e KEYCLOAK_IMPORT=/opt/jboss/keycloak/imports/realm-export-16.1.1.json \
-v $(pwd)/realm-export-16.1.1.json:/opt/jboss/keycloak/imports/realm-export-16.1.1.json \
--name keycloak \
jboss/keycloak:16.1.1
docker run -d -p 8080:8080 `
-e KEYCLOAK_USER=admin `
-e KEYCLOAK_PASSWORD=admin `
-e KEYCLOAK_IMPORT=/opt/jboss/keycloak/imports/realm-export-16.1.1.json `
-v ${PWD}\realm-export-16.1.1.json:/opt/jboss/keycloak/imports/realm-export-16.1.1.json `
--name keycloak `
jboss/keycloak:16.1.1
To export the realm configuration, run the following command:
docker exec -it keycloak /opt/jboss/keycloak/bin/standalone.sh \
-Djboss.socket.binding.port-offset=100 -Dkeycloak.migration.action=export \
-Dkeycloak.migration.provider=singleFile \
-Dkeycloak.migration.realmName=myrealm \
-Dkeycloak.migration.usersExportStrategy=REALM_FILE \
-Dkeycloak.migration.file=/tmp/realm-export-16.1.1.json
docker exec -it keycloak /opt/jboss/keycloak/bin/standalone.sh `
-Djboss.socket.binding.port-offset=100 `
-Dkeycloak.migration.action=export `
-Dkeycloak.migration.provider=singleFile `
-Dkeycloak.migration.realmName=myrealm `
-Dkeycloak.migration.usersExportStrategy=REALM_FILE `
-Dkeycloak.migration.file=/tmp/realm-export-16.1.1.json
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for prokie-fastapi-oidc-auth-0.2.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 621f08a7da0bdca0342883e9bf4c06032606e32233d13fb0557b867a59fd042c |
|
MD5 | 3e37b2c0816ad38c860498add83ee324 |
|
BLAKE2b-256 | 75aa50dab1d21c9a2eaed71410222457fb5a5611ef59b70bf0ded4ef3a564a65 |
Close
Hashes for prokie_fastapi_oidc_auth-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bbe28d083b2c2b820865fd5ba6f172c9a5b6ab4eb32e59938fb5fdeb60250714 |
|
MD5 | ddc52ff66ad470c3dfa00ed50f4b75a4 |
|
BLAKE2b-256 | 1499b8ebba305fac66056a26d098c14873888358a4bc99d6f10db23b6175bc73 |