canonical / canonical/microcloud-cluster-manager
oidc: Improve approach for handling OIDC login flow across different cluster members
- 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
Assessment
This issue has not been assessed yet.