Skip to content

Peter-Slump/python-keycloak-client

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

149 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Python Keycloak Client

Build Status Documentation Status codecov Maintainability License Version Wheel

Python Client for Keycloak identity and access management service

Documentation

http://www.keycloak.org/

https://github.com/Peter-Slump/python-keycloak-client

Development

Install development environment:

$ make install-python

Writing docs

Documentation is written using Sphinx and maintained in the docs folder.

To make it easy to write docs Docker support is available.

First build the Docker container:

$ docker build . -f DockerfileDocs -t python-keycloak-client-docs

Run the container

$ docker run -v `pwd`:/src --rm -t -i -p 8050:8050 python-keycloak-client-docs

Go in the browser to http://localhost:8050 and view the documentation which get refreshed and updated on every update in the documentation source.

Create release

$ git checkout master
$ git pull
-- Update release notes --
$ bumpversion release
$ make deploy-pypi
$ bumpversion --no-tag patch
$ git push origin master --tags

Release Notes

unreleased

Credits: phala:

  • Extracted basic CRUD logic from entities into common superclass KeycloakAdminEntity.

    • Entity parameters are available directly (e.g entity.id, entity.serviceAccountsEnabled).
    • Entity is fetched lazily when needed.
    • Update request shouldn't change unique identifiers, that will make the object not work anymore.
    • Update method doesn't transform snail_case into camelCase.
  • Added more methods to ClientRoles, Realms and Clients collections.

  • Added Token class which represents refreshable Token.

    • Token is now returned by most method in KeycloakOpenIDConnect class.
    • Token is automatically refreshed when set up as authentication header.
  • Removed some called_only_once checks because they didn't make sense anymore.

  • Bug fix: client_class on KeycloakRealm constructor (thanks to pcaro)

  • Improve Keycloak Client (thanks to ByJacob)

    • add delete in admin client
    • add manage groups in realm
    • add manage user roles
    • rename Roles to ClientRoles

v0.2.2

  • Added support for UMA1 for Keycloak < 4.0
  • Allow to query registered users (thanks to aberres)

v0.2.1

  • Including aio version in released package. (thanks to mackeyja92)

v0.2.0

  • Added async client based on aiohttp (thanks to nkoshell)

v0.1.4

  • Add support for password grant (thanks to scranen)
  • Bugfix: Prevent multiple values for keyword argument 'audience' in jwt.decode() (thanks to eugenejo)

About

Python Client for Keycloak identity and access management service

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors