Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support fetching from protected assets with Azure Storage #2011

Open
travier opened this issue Feb 5, 2025 · 3 comments
Open

Support fetching from protected assets with Azure Storage #2011

travier opened this issue Feb 5, 2025 · 3 comments

Comments

@travier
Copy link
Member

travier commented Feb 5, 2025

Feature Request

Environment

What hardware/cloud provider/hypervisor is being used to run Ignition?

Azure

Desired Feature

Support fetching the Ignition config from an Azure Storage blob that is protected in access by a managed identity. See: https://learn.microsoft.com/en-us/entra/identity/managed-identities-azure-resources/tutorial-linux-managed-identities-vm-access?pivots=identity-linux-mi-vm-access-storage

See:

Initial implementation in: #1923

Details that remain to be figured out:

  • Does this changes the behavior for existing / unprotected assets?
  • Should this be a spec bump? (needed if this changes the current behavior)
  • How should we document that support if we want to keep this as is?

The main difference here (compared to AWS S3 support for example) is that this is not using a special URI but regular HTTP URLs, so there is no immediate way of differentiating support / request for that feature.

Tracker for testing: coreos/fedora-coreos-tracker#1871

Other Information

See:

@jlebon
Copy link
Member

jlebon commented Feb 5, 2025

The code as written currently hard fails if e.g. it fails to get Azure credentials. If those URLs could have been used in the past (as e.g. public read), then spec gating or not, we should have any failure in the new path be at most a warning and have Ignition still fallback to anonymous HTTP fetches.

In fact, I think just doing that fallback should be sufficient to make this not spec gating.

@prestist
Copy link
Collaborator

prestist commented Feb 5, 2025

@jlebon Ah, yeah that makes sense, okay I can add that change here shortly and will link a pr.

prestist added a commit to prestist/ignition that referenced this issue Feb 5, 2025
prestist added a commit to prestist/ignition that referenced this issue Feb 5, 2025
prestist added a commit to prestist/ignition that referenced this issue Feb 5, 2025
prestist added a commit to prestist/ignition that referenced this issue Feb 5, 2025
@prestist
Copy link
Collaborator

prestist commented Feb 6, 2025

@jlebon I have added the fallback logic to this followup pr with documentation. #2012

prestist added a commit to prestist/ignition that referenced this issue Feb 12, 2025
prestist added a commit to prestist/ignition that referenced this issue Feb 12, 2025
prestist added a commit to prestist/ignition that referenced this issue Feb 12, 2025
prestist added a commit to prestist/ignition that referenced this issue Feb 12, 2025
prestist added a commit to prestist/ignition that referenced this issue Feb 12, 2025
prestist added a commit to prestist/ignition that referenced this issue Feb 13, 2025
prestist added a commit to prestist/ignition that referenced this issue Feb 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants