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.

319 lines
9.5 KiB

  1. ## v5.1.2 (2025-01-26)
  2. ### Fix
  3. - small bugs, use ruff as linter, added annotations
  4. ## v5.1.1 (2024-12-15)
  5. ### Fix
  6. - retry upon 401
  7. ## v5.1.0 (2024-12-14)
  8. ### Feat
  9. - get_client_all_sessions now supports pagination
  10. - uma extra payload
  11. - user profile metadata parameter for get_user method
  12. - uma extra payload
  13. ### Fix
  14. - check uma permissions with resource ID as well
  15. - get group by path should not raise on 404
  16. ## v5.0.0 (2024-12-10)
  17. ## v4.7.3 (2024-11-29)
  18. ### Fix
  19. - change to mounts (#622)
  20. ## v4.7.2 (2024-11-17)
  21. ### Fix
  22. - Feature parity for `a_decode_token` and `decode_token` (#616)
  23. ## v4.7.1 (2024-11-13)
  24. ### Fix
  25. - make sure to not call sync IO functions inside async functions (#615)
  26. ## v4.7.0 (2024-11-03)
  27. ### Feat
  28. - add client scope client-specific role mappings (#605)
  29. ## v4.6.3 (2024-10-26)
  30. ### Fix
  31. - Add optional Nonce parameter to the authorization URL requests (#606)
  32. ## v4.6.2 (2024-10-05)
  33. ### Fix
  34. - add scopes to device auth (#599)
  35. ## v4.6.1 (2024-10-05)
  36. ### Fix
  37. - changed sync get user id to async get user in create user async function (#600)
  38. ## v4.6.0 (2024-10-04)
  39. ### Feat
  40. - Add the max_retries parameter (#598)
  41. ## v4.5.1 (2024-10-02)
  42. ### Fix
  43. - Set client_credentials as grant_type also when x509 certificate is given (#597)
  44. ## v4.5.0 (2024-09-28)
  45. ### Feat
  46. - add ability to remove composite client roles (#596)
  47. ## v4.4.0 (2024-09-14)
  48. ### Feat
  49. - add matchingUri support for listing resources with wildcards (#592)
  50. ## v4.3.0 (2024-08-01)
  51. ### Feat
  52. - allow the use of client certificates in all requests (#584)
  53. ## v4.2.3 (2024-07-24)
  54. ### Fix
  55. - use a_public_key() in a_decode_token() instead of public_key() (#582)
  56. ## v4.2.2 (2024-07-16)
  57. ### Fix
  58. - correctly pass query params in a_send_update_account and a_send_verify_email (#581)
  59. ## v4.2.1 (2024-07-11)
  60. ### Fix
  61. - passing timeout values to ConnectionManager (#578)
  62. ## v4.2.0 (2024-06-22)
  63. ### Feat
  64. - functions for updating resource permissions and getting associated policies for a permission (#574)
  65. ## v4.1.0 (2024-06-06)
  66. ### Feat
  67. - Async feature (#566)
  68. ## v4.0.1 (2024-06-04)
  69. ### Fix
  70. - Leeway config (#568)
  71. ## v4.0.0 (2024-04-27)
  72. ### BREAKING CHANGE
  73. - changes signatures significantly
  74. - Many attributes removed from the admin class
  75. - Changes the exchange token API
  76. - Renamed parameter client_name to client_id in get_client_id method
  77. - Renames `KeycloakOpenID.well_know` to `KeycloakOpenID.well_known`
  78. ### Feat
  79. - add more request
  80. - get_client_all_sessions now supports pagination
  81. - uma extra payload
  82. - user profile metadata parameter for get_user method
  83. - uma extra payload
  84. - add client scope client-specific role mappings (#605)
  85. - Add the max_retries parameter (#598)
  86. - add ability to remove composite client roles (#596)
  87. - add matchingUri support for listing resources with wildcards (#592)
  88. - allow the use of client certificates in all requests (#584)
  89. - functions for updating resource permissions and getting associated policies for a permission (#574)
  90. - Async feature (#566)
  91. - Merge pull request #556 from marcospereirampj/release/4.0.0
  92. - re-enable full group hierarchy fetching
  93. - allows retrieval of realm and client level roles for a user (#512)
  94. - add admin group count (#540)
  95. - Allow query parameters for group children (#534)
  96. - new docs.
  97. - new docs.
  98. - new docs.
  99. - new docs.
  100. - new docs.
  101. - new docs.
  102. - new docs.
  103. - Adding additional methods to support roles-by-id api calls Most of the methods rely on the role name within python keycloak, which for the vast majority is fine, however there are some role names which cannot be used by the API endpoint as they contain characters that cannot be encoded properly. Therefore this change is to allow the use of the role's id to get, update and delete roles by their id instead.'
  104. - realm changing helpers
  105. - add KeycloakAdmin.get_idp() (#478)
  106. - Update dynamic client using registration access token (#491)
  107. - add an optional search criteria to the get_realm_roles function (#504)
  108. - added KeycloakAdmin.update_client_authz_resource() (#462)
  109. - Implement missing admin method create_client_authz_scope_based_permission() and create_client_authz_policy() (#460)
  110. - Add query to get users group method and permit pagination (#444)
  111. - Add get and delete methods for client authz resources (#435)
  112. - Add UMA policy management and permission tickets (#426)
  113. - add initial access token support and policy delete method
  114. - implement cache clearing API (#414)
  115. - add Keycloak UMA client (#403)
  116. - Add Client Scopes of Client
  117. - update header if token is given
  118. - init KeycloakAdmin with token
  119. - added default realm roles handlers
  120. - **api**: add tests for create_authz_scopes
  121. - option for enabling users
  122. - helping functions for disabling users
  123. - attack detection API implementation
  124. - added missing functionality to include attributes when returning realm roles according to specifications
  125. - add client scope-mappings client roles operations
  126. - Add token_type/scope to token exchange api
  127. - add client scope-mappings realm roles operations
  128. - add unit tests
  129. - add docstrings
  130. - add functions covering some missing REST API calls
  131. - added flake8-docstrings and upgraded dependencies
  132. - Ability to set custom timeout for KCOpenId and KCAdmin
  133. - Allow fetching existing policies before calling create_client_authz_client_policy()
  134. - support token exchange config via admin API
  135. - Add update_idp
  136. - Add update_mapper_in_idp
  137. - Support Token Exchange. Fixes #305
  138. - Add get_idp_mappers, fix #329
  139. - added new methods for client scopes
  140. - added UMA-permission request functionality
  141. - added authenticator providers getters
  142. - fixed admin client to pass the tests
  143. - initial setup of CICD and linting
  144. - add KeycloakAdmin.set_events
  145. - add components
  146. ### Fix
  147. - retry upon 401
  148. - check uma permissions with resource ID as well
  149. - get group by path should not raise on 404
  150. - change to mounts (#622)
  151. - Feature parity for `a_decode_token` and `decode_token` (#616)
  152. - make sure to not call sync IO functions inside async functions (#615)
  153. - Add optional Nonce parameter to the authorization URL requests (#606)
  154. - add scopes to device auth (#599)
  155. - changed sync get user id to async get user in create user async function (#600)
  156. - Set client_credentials as grant_type also when x509 certificate is given (#597)
  157. - use a_public_key() in a_decode_token() instead of public_key() (#582)
  158. - correctly pass query params in a_send_update_account and a_send_verify_email (#581)
  159. - passing timeout values to ConnectionManager (#578)
  160. - Leeway config (#568)
  161. - removed dead code, stabilized tests
  162. - removed deprecated functionality
  163. - lowercase default role name (#547)
  164. - fix keycloak_admin.create_user documentation/ typehint (#545)
  165. - improve KeycloakAdmin.get_client_id() performances (#511)
  166. - incorporate custom headers into default header setup (#533)
  167. - get_groups pagination call was not used #537 (#541)
  168. - use jwcrypto and remove python-jose
  169. - replace python-jose with jwcrypto
  170. - updated readme.
  171. - use grant type password with client secret
  172. - name of client_id parameter
  173. - update readme.
  174. - linter check
  175. - updated dependencies
  176. - Removing the admin realm variable which I created and is no longer needed
  177. - action bump
  178. - linter check.
  179. - depracated endpoint and fix groups services.
  180. - deprecate entitlement
  181. - no prints
  182. - Ci/fix tests (#506)
  183. - remove duplicate slash in URL_ADMIN_IDP (#459)
  184. - relax the version constraints
  185. - do not swap realm for user_realm when logging in with a client service account (#447)
  186. - Fixes `Authorization.load_config` breaking if a scope based permission is linked with anything other than a role based policy. Fixes #445 (#446)
  187. - issue with app engine reported in #440 (#442)
  188. - Initializing KeycloakAdmin without server_url (#439)
  189. - **pyproject.toml**: loose requests pgk and remove urllib3 as dependency (#434)
  190. - Check if _s exists in ConnectionManager before deleting it (#429)
  191. - deprecation warnings in keycloak_admin.py (#425)
  192. - improved type-hints (#427)
  193. - Refactor auto refresh (#415)
  194. - Check if applyPolicies exists in the config (#367)
  195. - get_group_by_path uses Keycloak API to load (#417)
  196. - tests and upgraded deps (#419)
  197. - do not include CODEOWNERS (#407)
  198. - fix testing create_client_authz_scopes parameters
  199. - fix linting
  200. - add testcase for invalid client id
  201. - create authz clients test case
  202. - create authz clients test case
  203. - use version from the package
  204. - default scope to openid
  205. - removed whitespace from urls
  206. - linting
  207. - now get_required_action_by_alias now returns None if action does not exist
  208. - moved imports at the top of the file
  209. - remove duplicate function
  210. - applied tox -e docs
  211. - applied flake linting checks
  212. - applied tox linting check
  213. - check client existence based on clientId
  214. - turn get_name into a method, use setters in connection manager
  215. - Support the auth_url method called with scope & state params now
  216. - raise correct exceptions
  217. - fixed bugs in events methods
  218. - fixed components bugs
  219. - use param for update client mapper
  220. - allow query parameters for users count
  221. - correct spelling of public API method
  222. - allow client_credentials token if username and password not specified
  223. - added fixes based on feedback
  224. - import classes in the base module
  225. - escape when get role fails
  226. - Add missing keycloak.authorization package
  227. - full tox fix ready
  228. - raise correct errors
  229. - **release**: version bumps for hotfix release
  230. - handle refresh_token error "Session not active"
  231. ### Refactor
  232. - refactored decode_token
  233. - Exchange token method
  234. - code formatting after tox checks
  235. - remove print statements
  236. - applied linting
  237. - no need to try if the type check is performed
  238. - merge master branch into local
  239. - slight restructure of the base fixtures
  240. - isort conf.py
  241. - Merge branch 'master' into feature/cicd
  242. ### Perf
  243. - improve performance of get_user_id (#449)