Problem Description
Enterprise download URLs currently embed the Image Factory username and password in plaintext. Per the July 15 planning meeting, these are being replaced with time-based signed URLs (see siderolabs/image-factory#498). This ticket covers the Omni side of that change. Part of TEL September readiness.
Where the signed URL gets generated is an open question for engineering: (I think) Omni holds the actual credential while the factory only stores hashes (flagged by Andrey at the end of the meeting), so signing may need to happen Omni-side, or Omni may need to request a fresh signed URL from the factory when the download dialog renders. Either way, the UI requirements below apply.
See siderolabs/image-factory#498 for more context
Solution
Regardless of where signing happens, the Omni UI needs to:
- Clearly state the link's validity window ("valid for 1 hour" — exact TTL TBD in image-factory#498).
- Handle expiry gracefully: a way to regenerate/re-fetch a fresh link on demand, not a silently dead link.
- Keep the URL copy/curl-able from any machine within the validity window — downloading via a bastion host into a restricted environment is the primary use case these links must support, and the reason plain authenticated-session links were rejected.
Alternative Solutions
No response
Notes
Related: #3137 (hide PXE boot for enterprise, which is the one URL type that can't use this scheme).
Problem Description
Enterprise download URLs currently embed the Image Factory username and password in plaintext. Per the July 15 planning meeting, these are being replaced with time-based signed URLs (see siderolabs/image-factory#498). This ticket covers the Omni side of that change. Part of TEL September readiness.
Where the signed URL gets generated is an open question for engineering: (I think) Omni holds the actual credential while the factory only stores hashes (flagged by Andrey at the end of the meeting), so signing may need to happen Omni-side, or Omni may need to request a fresh signed URL from the factory when the download dialog renders. Either way, the UI requirements below apply.
See siderolabs/image-factory#498 for more context
Solution
Regardless of where signing happens, the Omni UI needs to:
Alternative Solutions
No response
Notes
Related: #3137 (hide PXE boot for enterprise, which is the one URL type that can't use this scheme).