Kerberos running

This commit is contained in:
appleb_m
2026-06-24 15:29:54 +02:00
parent 0b530d1f08
commit 4e45c08373
+16 -5
View File
@@ -1,3 +1,4 @@
import json
import subprocess
import jwt
@@ -7,6 +8,7 @@ from aare.common.logger_config import setup_logger
logger = setup_logger('aareGUI')
def auth(base_url: str | None, cert_path: str | None) -> str:
curr_user = get_user()
if base_url is None:
@@ -46,7 +48,7 @@ def auth(base_url: str | None, cert_path: str | None) -> str:
logger.error(f"Token request curl error: {e}")
raise RuntimeError(
"Cannot reach AareDAQ server (unknown error). "
)
) from e
if token_result.returncode != 0:
logger.error(f"Token curl exited {token_result.returncode}. stderr: {token_result.stderr[:500]}")
@@ -55,12 +57,21 @@ def auth(base_url: str | None, cert_path: str | None) -> str:
"Check Kerberos ticket is valid (kinit) and server is reachable."
)
token = token_result.stdout.strip()
if not token:
logger.error(f"Empty token response. stderr: {token_result.stderr[:500]}")
try:
response_json = json.loads(token_result.stdout)
except json.JSONDecodeError as e:
logger.error(f"Token response not JSON. stdout: {token_result.stdout[:500]}")
raise RuntimeError(
"Authentication failed (empty server response). "
"Authentication failed (invalid server response). "
"The server may be starting up or misconfigured."
) from e
token = response_json.get("access_token")
if not token or not isinstance(token, str):
logger.error(f"Missing access_token. Keys: {list(response_json.keys())}. Server response {response_json}")
raise RuntimeError(
"Authentication failed (missing token in server response). "
"The server may be starting up."
)
return token