pypomes-iam 0.2.4__tar.gz → 0.2.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pypomes-iam might be problematic. Click here for more details.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pypomes_iam
3
- Version: 0.2.4
3
+ Version: 0.2.5
4
4
  Summary: A collection of Python pomes, penyeach (IAM modules)
5
5
  Project-URL: Homepage, https://github.com/TheWiseCoder/PyPomes-IAM
6
6
  Project-URL: Bug Tracker, https://github.com/TheWiseCoder/PyPomes-IAM/issues
@@ -6,7 +6,7 @@ build-backend = "hatchling.build"
6
6
 
7
7
  [project]
8
8
  name = "pypomes_iam"
9
- version = "0.2.4"
9
+ version = "0.2.5"
10
10
  authors = [
11
11
  { name="GT Nunes", email="wisecoder01@gmail.com" }
12
12
  ]
@@ -22,14 +22,8 @@ def service_login() -> Response:
22
22
 
23
23
  :return: the response from the redirect operation
24
24
  """
25
- logger: Logger
26
- registry: dict[str, Any]
27
- if request.endpoint == "jusbr-login":
28
- logger = _jusbr_get_logger()
29
- registry = _jusbr_get_registry()
30
- else:
31
- logger = _keycloak_get_logger()
32
- registry = _keycloak_get_registry()
25
+ # retrieve logger and registry
26
+ logger, registry = _get_iam_args(endpoint=request.endpoint)
33
27
 
34
28
  # log the request
35
29
  if logger:
@@ -61,14 +55,8 @@ def service_logout() -> Response:
61
55
 
62
56
  :return: response *OK*
63
57
  """
64
- logger: Logger
65
- registry: dict[str, Any]
66
- if request.endpoint == "jusbr-logout":
67
- logger = _jusbr_get_logger()
68
- registry = _jusbr_get_registry()
69
- else:
70
- logger = _keycloak_get_logger()
71
- registry = _keycloak_get_registry()
58
+ # retrieve logger and registry
59
+ logger, registry = _get_iam_args(endpoint=request.endpoint)
72
60
 
73
61
  # log the request
74
62
  if logger:
@@ -98,14 +86,8 @@ def service_callback() -> Response:
98
86
 
99
87
  :return: the response containing the token, or *BAD REQUEST*
100
88
  """
101
- logger: Logger
102
- registry: dict[str, Any]
103
- if request.endpoint == "jusbr-callback":
104
- logger = _jusbr_get_logger()
105
- registry = _jusbr_get_registry()
106
- else:
107
- logger = _keycloak_get_logger()
108
- registry = _keycloak_get_registry()
89
+ # retrieve logger and registry
90
+ logger, registry = _get_iam_args(endpoint=request.endpoint)
109
91
 
110
92
  # log the request
111
93
  if logger:
@@ -143,14 +125,8 @@ def service_token() -> Response:
143
125
 
144
126
  :return: the response containing the token, or *UNAUTHORIZED*
145
127
  """
146
- logger: Logger
147
- registry: dict[str, Any]
148
- if request.endpoint == "jusbr-token":
149
- logger = _jusbr_get_logger()
150
- registry = _jusbr_get_registry()
151
- else:
152
- logger = _keycloak_get_logger()
153
- registry = _keycloak_get_registry()
128
+ # retrieve logger and registry
129
+ logger, registry = _get_iam_args(endpoint=request.endpoint)
154
130
 
155
131
  # log the request
156
132
  if logger:
@@ -174,3 +150,25 @@ def service_token() -> Response:
174
150
  logger.debug(msg=f"Response {result}")
175
151
 
176
152
  return result
153
+
154
+
155
+ def _get_iam_args(endpoint: str) -> tuple[Logger, dict[str, Any]]:
156
+ """
157
+ Retrieve the logger and registry associated the the IAM identifies by *endpoint*.
158
+
159
+ :param endpoint: the service enpoint identifying the IAM.
160
+ :return: the tuple (*logger*, *registry*) associated with *endpoint*
161
+ """
162
+ # initialize the return variables
163
+ result_logger: Logger | None = None
164
+ result_registry: dict[str, Any] | None = None
165
+
166
+ if endpoint.startswith("jusbr-"):
167
+ result_logger = _jusbr_get_logger()
168
+ result_registry = _jusbr_get_registry()
169
+ elif endpoint.startswith("keycloak-"):
170
+ result_logger = _keycloak_get_logger()
171
+ result_registry = _keycloak_get_registry()
172
+
173
+ return result_logger, result_registry
174
+
@@ -111,11 +111,6 @@ def keycloak_setup(flask_app: Flask,
111
111
  }
112
112
 
113
113
  # establish the endpoints
114
- if token_endpoint:
115
- flask_app.add_url_rule(rule=token_endpoint,
116
- endpoint="keycloak-token",
117
- view_func=service_token,
118
- methods=["GET"])
119
114
  if login_endpoint:
120
115
  flask_app.add_url_rule(rule=login_endpoint,
121
116
  endpoint="keycloak-login",
@@ -131,6 +126,11 @@ def keycloak_setup(flask_app: Flask,
131
126
  endpoint="keycloak-callback",
132
127
  view_func=service_callback,
133
128
  methods=["POST"])
129
+ if token_endpoint:
130
+ flask_app.add_url_rule(rule=token_endpoint,
131
+ endpoint="keycloak-token",
132
+ view_func=service_token,
133
+ methods=["GET"])
134
134
 
135
135
 
136
136
  def keycloak_get_token(user_id: str,
File without changes
File without changes
File without changes