Skip to content

Fixes #3736. - #4154

Open
strehle wants to merge 1 commit into
developfrom
fix/issue/3736
Open

strehle wants to merge 1 commit into
developfrom
fix/issue/3736

Conversation

@strehle

@strehle strehle commented Nov 11, 2026

Copy link
Copy Markdown
Member
  • Validate identity-zone subdomains on create and update, rejecting unsafe values with HTTP 422.
  • Preserve the default UAA zone’s empty subdomain and deletion of legacy invalid zones.
  • Add regression tests, correct affected test fixtures, and update documentation.

This comment was marked as resolved.

fhanik
fhanik previously approved these changes Nov 12, 2026

This comment was marked as resolved.

This comment was marked as resolved.

This comment was marked as resolved.

@strehle
strehle force-pushed the fix/issue/3736 branch 2 times, most recently from 032f651 to ab69a9d Compare November 12, 2026 19:51
@strehle
strehle requested a lite review from Copilot November 12, 2026 19:52

This comment was marked as resolved.

@strehle
strehle requested a lite review from Copilot November 12, 2026 20:08

This comment was marked as resolved.

- Validate identity-zone subdomains on create and update, rejecting unsafe values with HTTP 422.
- Preserve the default UAA zone’s empty subdomain and deletion of legacy invalid zones.
- Add regression tests, correct affected test fixtures, and update documentation.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🔵 Needs a closer look

The migration rewrites persisted identity-zone subdomains and resolves legacy uniqueness collisions across three database engines, creating production data-integrity and database-specific behavior risks that require human review and real-database validation.

No open issues 🎉

1 resolved since last review

Review effort: Lite

@strehle
strehle requested a review from fhanik November 12, 2026 20:46
hostnames
.forEach(
entry -> this.defaultZoneHostnames.add(entry.toLowerCase())
entry -> this.defaultZoneHostnames.add(entry.toLowerCase(Locale.ROOT))

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This could make existing zones inaccessible or route requests to a different zone if their subdomains were stored using a different system locale.

}

private static Stream<Arguments> invalidSubdomains() {
return Stream.of(null, "", " ", "my zone", "my.zone", "my_zone", "-zone", "zone-",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Was it intentional to disallow underscores for existing zones? This would prevent updates to zones that already have an underscore in their subdomain.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: Pending Merge | Prioritized

Development

Successfully merging this pull request may close these issues.

Identity Zone Create/Update should validate subdomain

4 participants