Reported as an issue when using MetalLB
Authentication fails when serving REANA behind a load balancer, in particular due to the fact that session identifiers are not stable.
See the following code that generates the session identifiers (source):
def _create_identifier():
h = sha512()
h.update(f"{request.remote_addr}|{request.user_agent.string}".encode())
return h.hexdigest()
request.remote_addr changes based on which load balancer/server serves the request. It might even just be caused by a misconfiguration of ProxyFix.
Reported as an issue when using MetalLB
Authentication fails when serving REANA behind a load balancer, in particular due to the fact that session identifiers are not stable.
See the following code that generates the session identifiers (source):
request.remote_addrchanges based on which load balancer/server serves the request. It might even just be caused by a misconfiguration ofProxyFix.