canonical / canonical/microcloud-cluster-manager

oidc: Improve approach for handling OIDC login flow across different cluster members

Open
#39 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
21
Forks
5
Avg merge
13h 56m
Merged PRs (30d)
30

Description

# Issue description

The OIDC login will fail in a LXD cluster if different members handle different stages of the flow. This is likely to occur if load balancing is deployed in front of the cluster.

This is an open [issue](https://github.com/canonical/lxd/issues/13644) in LXD. Currently in site manager, we have implemented a work around by setting the member address in the `state` query param as part of the idp callback url. This allows the `/oidc/callback` endpoint to identify which member initiated the login flow and therefore forward the request to that member for token exchange. However, there may be a better solution implemented in LXD. We should align the approach in site manager with that in LXD once the issue is closed.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.