Skip to content

VAULT-33758: IPv6 address conformance for proxy and agent #29517

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

Merged
merged 6 commits into from
Feb 27, 2025
Merged

Conversation

ryancragun
Copy link
Collaborator

Description

This is a follow-up to our initial work0 to address RFC-5952 §4 conformance for IPv6 addresses in Vault. The initial pass focused on the vault server configuration and start-up routines. This follow-up focuses on Agent and Proxy, with a few minor improvements for server.

The approach generally mirrors the server implementation but also adds support for normalization with CLI configuration overrides.

One aspect we do not normalize currently is Agent/Proxy client creation to the Vault server with credentials taken from environment variables, as it would require larger changes to the api module. In practice this ought to be fine for the majority of cases.

TODO only if you're a HashiCorp employee

  • Backport Labels: If this fix needs to be backported, use the appropriate backport/ label that matches the desired release branch. Note that in the CE repo, the latest release branch will look like backport/x.x.x, but older release branches will be backport/ent/x.x.x+ent.
    • LTS: If this fixes a critical security vulnerability or severity 1 bug, it will also need to be backported to the current LTS versions of Vault. To ensure this, use all available enterprise labels.
  • ENT Breakage: If this PR either 1) removes a public function OR 2) changes the signature
    of a public function, even if that change is in a CE file, double check that
    applying the patch for this PR to the ENT repo and running tests doesn't
    break any tests. Sometimes ENT only tests rely on public functions in CE
    files.
  • Jira: If this change has an associated Jira, it's referenced either
    in the PR description, commit message, or branch name.
  • RFC: If this change has an associated RFC, please link it in the description.
  • ENT PR: If this change has an associated ENT PR, please link it in the
    description. Also, make sure the changelog is in this PR, not in your ENT PR.

@ryancragun ryancragun requested a review from a team as a code owner February 6, 2025 16:29
@ryancragun ryancragun requested a review from Monkeychip February 6, 2025 16:29
@github-actions github-actions bot added the hashicorp-contributed-pr If the PR is HashiCorp (i.e. not-community) contributed label Feb 6, 2025
Copy link

github-actions bot commented Feb 6, 2025

CI Results:
All Go tests succeeded! ✅

Copy link

github-actions bot commented Feb 6, 2025

Build Results:
All builds succeeded! ✅

@ryancragun ryancragun force-pushed the VAULT-33758 branch 10 times, most recently from 5634d4d to 4d7c2b9 Compare February 8, 2025 01:12
@ryancragun ryancragun force-pushed the VAULT-33758 branch 3 times, most recently from c1eb508 to 104aa04 Compare February 24, 2025 23:39
This is a follow-up to our initial work[0] to address RFC-5952 §4
conformance for IPv6 addresses in Vault. The initial pass focused on the
vault server configuration and start-up routines. This follow-up focuses
on Agent and Proxy, with a few minor improvements for server.

The approach generally mirrors the server implementation but also adds
support for normalization with CLI configuration overrides.

One aspect we do not normalize currently is Agent/Proxy client creation
to the Vault server with credentials taken from environment variables,
as it would require larger changes to the `api` module. In practice this
ought to be fine for the majority of cases.

[0]: #29228

Signed-off-by: Ryan Cragun <[email protected]>
Signed-off-by: Ryan Cragun <[email protected]>
Signed-off-by: Ryan Cragun <[email protected]>
Copy link
Collaborator

@raskchanky raskchanky left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ryancragun ryancragun merged commit 58a49e6 into main Feb 27, 2025
97 checks passed
@ryancragun ryancragun deleted the VAULT-33758 branch February 27, 2025 22:57
drivera258 pushed a commit that referenced this pull request Mar 3, 2025
This is a follow-up to our initial work[0] to address RFC-5952 §4 conformance for IPv6 addresses in Vault. The initial pass focused on the vault server configuration and start-up routines. This follow-up focuses on Agent and Proxy, with a few minor improvements for server.

The approach generally mirrors the server implementation but also adds support for normalization with CLI configuration overrides.

One aspect we do not normalize currently is Agent/Proxy client creation to the Vault server with credentials taken from environment variables, as it would require larger changes to the `api` module. In practice this ought to be fine for the majority of cases.

[0]: #29228
gulducat added a commit to hashicorp/nomad that referenced this pull request May 22, 2025
https://datatracker.ietf.org/doc/html/rfc5952#section-4

* copy NormalizeAddr func from vault
  * PRs hashicorp/vault#29228 & hashicorp/vault#29517
* normalize bind/advertise addrs
* normalize consul/vault addrs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
hashicorp-contributed-pr If the PR is HashiCorp (i.e. not-community) contributed pr/no-milestone
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants