Browse Source

Merged in foini/python-keycloak/CHR-6643-openid-authorization-code (pull request #10)

Add possibility to use authorization_code in KeycloakOpenID.token

Approved-by: Christian Ouwehand <chris@crunchrapps.com>
Approved-by: Daan Bakker <daan@crunchrapps.com>
Approved-by: Marcos Pereira <marcospereira.mpj@gmail.com>
pull/12/head
Remco Kranenburg 6 years ago
committed by Marcos Pereira
parent
commit
d808fbd237
  1. 7
      keycloak/keycloak_openid.py

7
keycloak/keycloak_openid.py

@ -150,7 +150,7 @@ class KeycloakOpenID:
""" """
return NotImplemented return NotImplemented
def token(self, username, password, grant_type=["password"]):
def token(self, username="", password="", grant_type=["password"], code="", redirect_uri=""):
""" """
The token endpoint is used to obtain tokens. Tokens can either be obtained by The token endpoint is used to obtain tokens. Tokens can either be obtained by
exchanging an authorization code or by supplying credentials directly depending on exchanging an authorization code or by supplying credentials directly depending on
@ -162,11 +162,14 @@ class KeycloakOpenID:
:param username: :param username:
:param password: :param password:
:param grant_type: :param grant_type:
:param code:
:param redirect_uri
:return: :return:
""" """
params_path = {"realm-name": self.realm_name} params_path = {"realm-name": self.realm_name}
payload = {"username": username, "password": password, payload = {"username": username, "password": password,
"client_id": self.client_id, "grant_type": grant_type}
"client_id": self.client_id, "grant_type": grant_type,
"code": code, "redirect_uri": redirect_uri}
payload = self._add_secret_key(payload) payload = self._add_secret_key(payload)
data_raw = self.connection.raw_post(URL_TOKEN.format(**params_path), data_raw = self.connection.raw_post(URL_TOKEN.format(**params_path),

Loading…
Cancel
Save