Browse Source

add client session stats

Signed-off-by: modularTaco <37046961+modularTaco@users.noreply.github.com>
pull/258/head
modularTaco 3 years ago
parent
commit
9abbf559ac
  1. 18
      keycloak/keycloak_admin.py
  2. 4
      keycloak/urls_patterns.py

18
keycloak/keycloak_admin.py

@ -1928,7 +1928,6 @@ class KeycloakAdmin:
data_raw = self.connection.raw_get(URL_ADMIN_CLIENT_ALL_SESSIONS.format(**params_path))
return raise_error_from_response(data_raw, KeycloakGetError)
def delete_user_realm_role(self, user_id, payload):
"""
Delete realm-level role mappings
@ -1938,4 +1937,19 @@ class KeycloakAdmin:
params_path = {"realm-name": self.realm_name, "id": str(user_id) }
data_raw = self.connection.raw_delete(URL_ADMIN_DELETE_USER_ROLE.format(**params_path),
data=json.dumps(payload))
return raise_error_from_response(data_raw, KeycloakGetError, expected_codes=[204])
return raise_error_from_response(data_raw, KeycloakGetError, expected_codes=[204])
def get_client_sessions_stats(self):
"""
Get current session count for all clients with active sessions
https://www.keycloak.org/docs-api/16.1/rest-api/index.html#_getclientsessionstats
:return: Dict of clients and session count
"""
params_path = {"realm-name": self.realm_name}
data_raw = self.raw_get(
self.URL_ADMIN_CLIENT_SESSION_STATS.format(**params_path)
)
return raise_error_from_response(data_raw, KeycloakGetError)

4
keycloak/urls_patterns.py

@ -109,4 +109,6 @@ URL_ADMIN_USER_FEDERATED_IDENTITY = "admin/realms/{realm-name}/users/{id}/federa
URL_ADMIN_EVENTS = 'admin/realms/{realm-name}/events'
URL_ADMIN_DELETE_USER_ROLE = "admin/realms/{realm-name}/users/{id}/role-mappings/realm"
URL_ADMIN_DELETE_USER_ROLE = "admin/realms/{realm-name}/users/{id}/role-mappings/realm"
URL_ADMIN_CLIENT_SESSION_STATS = "admin/realms/{realm-name}/client-session-stats"
Loading…
Cancel
Save