We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
id_token
1 parent b1667f3 commit 9a33107Copy full SHA for 9a33107
providers/keycloak/src/airflow/providers/keycloak/auth_manager/routes/login.py
@@ -121,7 +121,8 @@ def logout(request: Request):
121
base_url = conf.get("api", "base_url", fallback="/")
122
post_logout_redirect_uri = urljoin(base_url, f"{AUTH_MANAGER_FASTAPI_APP_PREFIX}/logout_callback")
123
124
- if id_token:
+ # Validate id_token format before using in redirect (JWT tokens have 3 parts separated by dots)
125
+ if id_token and id_token.count(".") == 2 and all(c.isalnum() or c in ".-_" for c in id_token):
126
encoded_id_token = quote(id_token, safe="")
127
logout_url = (
128
f"{end_session_endpoint}?post_logout_redirect_uri={post_logout_redirect_uri}"
0 commit comments