You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Marcos Pereira a5081cece4 Updated version 0.4.1 7 years ago
docs Updated version 0.4.1 7 years ago
keycloak Added Instropect RPT and Token. 7 years ago
.gitignore Initial import 7 years ago
.travis.yml Updated travis. 7 years ago
LICENSE Initial commit 7 years ago
README.md Added Instropect RPT and Token. 7 years ago
requirements.txt Added Instropect RPT and Token. 7 years ago
setup.cfg Update setups and docs. 7 years ago
setup.py Updated version 0.4.1 7 years ago

README.md

Build Status Documentation Status

Python Keycloak

python-keycloak is a Python package providing access to the Keycloak API.

Installation

Via Pypi Package:

$ pip install python-keycloak

Manually

$ python setup.py install

Dependencies

python-keycloak depends on:

Tests Dependencies

Bug reports

Please report bugs and feature requests at https://github.com/marcospereirampj/python-keycloak/issues

Documentation

The documentation for python-keycloak is available on readthedocs.

Contributors

Usage

from keycloak import Keycloak

# Configure client
keycloak = Keycloak(server_url="http://localhost:8080/auth/",
                    client_id="example_client",
                    realm_name="example_realm",
                    client_secret_key="secret")

# Get WellKnow
config_well_know = keycloak.well_know()

# Get Token
token = keycloak.token("user", "password")

# Get Userinfo
userinfo = keycloak.userinfo(token['access_token'])

# Logout
keycloak.logout(token['refresh_token'])

# Get Certs
certs = keycloak.certs()

# Get RPT (Entitlement)
token = keycloak.token("user", "password")
rpt = keycloak.entitlement(token['access_token'], "resource_id")

# Instropect RPT
token_rpt_info = keycloak.instropect(keycloak.instropect(token['access_token'], rpt=rpt['rpt'],
                                     token_type_hint="requesting_party_token"))

# Instropect Token
token_info = keycloak.instropect(token['access_token']))