Skip to content

Fix NPE and incorrect realm parsing when JWT realm claim contains slashes - #35681

Open
wrodrig wants to merge 3 commits into
OpenLiberty:integrationfrom
wrodrig:fix-realm-slash
Open

wrodrig wants to merge 3 commits into
OpenLiberty:integrationfrom
wrodrig:fix-realm-slash

Conversation

@wrodrig

@wrodrig wrodrig commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

A JWT realm claim with a leading or multi-segment slash (e.g. "/myrealm",
"/a/b") caused a NullPointerException because AccessIdUtil.matcher() returned
null, leaving a null WSCredential in sharedState that Subject.add() rejected.

  • AccessIdUtil: add per-realm quoted patterns for registered realms; replace
    the single-segment fallback ps with a greedy variant that correctly splits
    any unregistered leading-slash realm at the last slash.

  • ServerCommonLoginModule: guard WSCredential add against null.

  • Tests: unit tests for all slash variants; FAT tests for auth success and
    realm value preservation.

  • I have considered the risk of behavior change or other zero migration impact (https://github.com/OpenLiberty/open-liberty/wiki/Behavior-Changes).

  • If this PR fixes an Issue, the description includes "Fixes #FILLMEIN" or "Resolves #FILLMEIN" (verify release bug label if applicable: https://github.com/OpenLiberty/open-liberty/wiki/Open-Liberty-Conventions).

  • If this PR resolves an external Known Issue (including APARS), the description includes "Fixes #FILLMEIN" or "Resolves #FILLMEIN".

@wrodrig wrodrig self-assigned this Sep 2, 2026
@wrodrig

wrodrig commented Sep 2, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ❌ completed with errors/failures.)
fat.buckets.to.run=all
spawn.fullfat.buckets=com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.sysProps,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.2,com.ibm.ws.security.jwtsso_fat.mpJwt-2.0,com.ibm.ws.security.jwtsso_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.noMpJwt,com.ibm.ws.security.spnego_fat.2,com.ibm.ws.security.jaspic_fat,com.ibm.ws.security.jaspic.jakarta10_fat,com.ibm.ws.security.javaeesec_fat,com.ibm.ws.security.oidc.server_fat,com.ibm.ws.security.token.ltpa_fat

Note: Target locations of links might be accessible only to IBM employees.

@wrodrig

wrodrig commented Sep 2, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ❌ completed with errors/failures.)
fat.buckets.to.run=all
spawn.fullfat.buckets=com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.sysProps,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.2,com.ibm.ws.security.jwtsso_fat.mpJwt-2.0,com.ibm.ws.security.jwtsso_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.noMpJwt,com.ibm.ws.security.spnego_fat.2,com.ibm.ws.security.jaspic_fat,com.ibm.ws.security.jaspic.jakarta10_fat,com.ibm.ws.security.javaeesec_fat,com.ibm.ws.security.oidc.server_fat,com.ibm.ws.security.token.ltpa_fat
fat.test.mode=full

Note: Target locations of links might be accessible only to IBM employees.

@LibbyBot

LibbyBot commented Sep 2, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

1 similar comment
@LibbyBot

LibbyBot commented Sep 2, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

@wrodrig

wrodrig commented Sep 3, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ❌ completed with errors/failures.)
fat.buckets.to.run=all
spawn.fullfat.buckets=com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.sysProps,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.2,com.ibm.ws.security.jwtsso_fat.mpJwt-2.0,com.ibm.ws.security.jwtsso_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.noMpJwt,com.ibm.ws.security.spnego_fat.2,com.ibm.ws.security.jaspic_fat,com.ibm.ws.security.jaspic.jakarta10_fat,com.ibm.ws.security.javaeesec_fat,com.ibm.ws.security.oidc.server_fat,com.ibm.ws.security.token.ltpa_fat
fat.test.mode=full

Note: Target locations of links might be accessible only to IBM employees.

@LibbyBot

LibbyBot commented Sep 3, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

@wrodrig
wrodrig force-pushed the fix-realm-slash branch 3 times, most recently from 5cd014a to 0076d2c Compare September 3, 2026 18:32
@wrodrig

wrodrig commented Sep 3, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ❌ completed with errors/failures.)
fat.buckets.to.run=all
spawn.fullfat.buckets=com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.sysProps,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.2,com.ibm.ws.security.jwtsso_fat.mpJwt-2.0,com.ibm.ws.security.jwtsso_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.noMpJwt,com.ibm.ws.security.spnego_fat.2,com.ibm.ws.security.jaspic_fat,com.ibm.ws.security.jaspic.jakarta10_fat,com.ibm.ws.security.javaeesec_fat,com.ibm.ws.security.oidc.server_fat,com.ibm.ws.security.token.ltpa_fat
fat.test.mode=full

Note: Target locations of links might be accessible only to IBM employees.

@LibbyBot

LibbyBot commented Sep 3, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

@wrodrig
wrodrig force-pushed the fix-realm-slash branch 2 times, most recently from a1a637c to 1b2e361 Compare September 3, 2026 21:39
Before this fix, a JWT containing a realm value starting with a forward
slash caused a NullPointerException inside AccessIdUtil.matcher() during
authentication. The generic pattern `([^:]+):([^/]+)/(.+)` requires a
non-empty, non-slash token before the first `/`, so it failed to match,
returning null and triggering an NPE downstream.

Changes:
- AccessIdUtil: Replace single realmPattern with realmPatterns[] array,
  compiling one Pattern per registered realm using Pattern.quote(). This
  allows slash-containing realms to match exactly via the cached patterns
  before falling back to the generic ph/p patterns.
- ServerCommonLoginModule: Guard WSPrincipal and WSCredential adds against
  null to produce a controlled auth failure instead of an unhandled NPE.
- JwtPrincipalMappingTest: New unit tests confirming getRealm() returns the
  raw JWT realm claim verbatim (no stripping); slash handling belongs to
  AccessIdUtil, not JwtPrincipalMapping.
- AccessIdUtilLeadingSlashRealmTest: New unit tests covering leading-slash,
  trailing-slash, internal-slash, multi-realm, and bootstrap fallback paths.
- MPJwtLeadingSlashRealmTests: New FAT test class covering successful auth,
  realm preservation, and NPE-absence for slash variants.
- FATSuite: Register MPJwtLeadingSlashRealmTests in the mpJwt-1.1 suite.
@wrodrig

wrodrig commented Sep 3, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ❌ completed with errors/failures.)
fat.buckets.to.run=all
spawn.fullfat.buckets=com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.sysProps,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.2,com.ibm.ws.security.jwtsso_fat.mpJwt-2.0,com.ibm.ws.security.jwtsso_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.noMpJwt,com.ibm.ws.security.spnego_fat.2,com.ibm.ws.security.jaspic_fat,com.ibm.ws.security.jaspic.jakarta10_fat,com.ibm.ws.security.javaeesec_fat,com.ibm.ws.security.oidc.server_fat,com.ibm.ws.security.token.ltpa_fat
fat.test.mode=full

Note: Target locations of links might be accessible only to IBM employees.

@LibbyBot

LibbyBot commented Sep 3, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

@wrodrig wrodrig changed the title Fix NPE in AccessIdUtil when JWT realm claim has a leading slash Fix NPE and incorrect realm parsing when JWT realm claim contains slashes Sep 3, 2026
@wrodrig

wrodrig commented Sep 3, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ❌ completed with errors/failures.)
fat.buckets.to.run=all
spawn.fullfat.buckets=com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.sysProps,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.2,com.ibm.ws.security.jwtsso_fat.mpJwt-2.0,com.ibm.ws.security.jwtsso_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.noMpJwt,com.ibm.ws.security.spnego_fat.2,com.ibm.ws.security.jaspic_fat,com.ibm.ws.security.jaspic.jakarta10_fat,com.ibm.ws.security.javaeesec_fat,com.ibm.ws.security.oidc.server_fat,com.ibm.ws.security.token.ltpa_fat
fat.test.mode=full

Note: Target locations of links might be accessible only to IBM employees.

@wrodrig

wrodrig commented Sep 3, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ❌ completed with errors/failures.)
fat.buckets.to.run=all
spawn.fullfat.buckets=com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.sysProps,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.2,com.ibm.ws.security.jwtsso_fat.mpJwt-2.0,com.ibm.ws.security.jwtsso_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.noMpJwt,com.ibm.ws.security.spnego_fat.2,com.ibm.ws.security.jaspic_fat,com.ibm.ws.security.jaspic.jakarta10_fat,com.ibm.ws.security.javaeesec_fat,com.ibm.ws.security.oidc.server_fat,com.ibm.ws.security.token.ltpa_fat
fat.test.mode=full

Note: Target locations of links might be accessible only to IBM employees.

@LibbyBot

LibbyBot commented Sep 3, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

1 similar comment
@LibbyBot

LibbyBot commented Sep 4, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

@wrodrig

wrodrig commented Sep 4, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ⏳InProgress)
fat.buckets.to.run=all
spawn.fullfat.buckets=com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.sysProps,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.2_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.2.1_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.2,com.ibm.ws.security.jwtsso_fat.mpJwt-2.0,com.ibm.ws.security.jwtsso_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.noMpJwt,com.ibm.ws.security.spnego_fat.2,com.ibm.ws.security.jaspic_fat,com.ibm.ws.security.jaspic.jakarta10_fat,com.ibm.ws.security.javaeesec_fat,com.ibm.ws.security.oidc.server_fat,com.ibm.ws.security.token.ltpa_fat
fat.test.mode=full

Note: Target locations of links might be accessible only to IBM employees.

@LibbyBot

LibbyBot commented Sep 4, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

@wrodrig

wrodrig commented Sep 8, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ❌ completed with errors/failures.)
fat.buckets.to.run=all
fat.test.mode=full

Note: Target locations of links might be accessible only to IBM employees.

@wrodrig

wrodrig commented Sep 8, 2026

Copy link
Copy Markdown
Contributor Author

!build
fat.buckets.to.run=all
fat.test.mode=full

@LibbyBot

LibbyBot commented Sep 8, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

@wrodrig

wrodrig commented Sep 8, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ⏳InProgress)
fat.buckets.to.run=all
fat.test.mode=full

Note: Target locations of links might be accessible only to IBM employees.

@LibbyBot

LibbyBot commented Sep 8, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

@wrodrig

wrodrig commented Sep 9, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ❌ completed with errors/failures.)
fat.buckets.to.run=all
fat.test.mode=full

Note: Target locations of links might be accessible only to IBM employees.

@wrodrig

wrodrig commented Sep 9, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ❌ completed with errors/failures.)
fat.buckets.to.run=all
spawn.fullfat.buckets=com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.sysProps,com.ibm.ws.security.jwtsso_fat.mpJwt-1.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.2,com.ibm.ws.security.jwtsso_fat.mpJwt-2.0,com.ibm.ws.security.jwtsso_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.noMpJwt,com.ibm.ws.security.token.ltpa_fat

Note: Target locations of links might be accessible only to IBM employees.

@LibbyBot

LibbyBot commented Sep 9, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

1 similar comment
@LibbyBot

LibbyBot commented Sep 9, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

Drop multi-segment leading-slash realm support from the unregistered
fallback path. The ps pattern reverts to (/[^/]+)/(.+), which handles
exactly the customer-reported case where a JWT realm claim has a single
leading slash (e.g. "/idbroker"). Multi-segment paths such as
"/realm/subRealm" were never supported by the original code and are not
part of the reported defect scope.

- AccessIdUtil.java: ps simplified from greedy multi-segment pattern
  back to ([^:]+):(/[^/]+)/(.+)
- AccessIdUtilLeadingSlashRealmTest.java: remove multi-segment unit
  tests; keep single-segment coverage
- MPJwtLeadingSlashRealmTests.java: remove testLeadingSlashWithSubpath_authSucceeds
@wrodrig

wrodrig commented Sep 9, 2026

Copy link
Copy Markdown
Contributor Author

!build
(view Open Liberty Personal Build - ❌ completed with errors/failures.)
fat.buckets.to.run=all
spawn.fullfat.buckets=com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.1.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-1.2.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.0.sysProps,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.envVars,com.ibm.ws.security.mp.jwt.1.1_fat.mpJwt-2.1.sysProps,com.ibm.ws.security.jwtsso_fat.mpJwt-1.1,com.ibm.ws.security.jwtsso_fat.mpJwt-1.2,com.ibm.ws.security.jwtsso_fat.mpJwt-2.0,com.ibm.ws.security.jwtsso_fat.mpJwt-2.1,com.ibm.ws.security.jwtsso_fat.noMpJwt,com.ibm.ws.security.token.ltpa_fat

Note: Target locations of links might be accessible only to IBM employees.

@LibbyBot

LibbyBot commented Sep 9, 2026

Copy link
Copy Markdown
Member

Code analysis and actions

DO NOT DELETE THIS COMMENT.
  • 1 FAT files were changed, added, or removed.

  • Check that the build did not break the affected FAT suite(s).

  • 1 test infrastructure code files were changed.

  • Test failures/errors in the build could be due to these changes.

  • 2 product code files were changed.

  • Please describe in a separate comment how you tested your changes.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants