Skip to content

Conversation

dk1844
Copy link
Collaborator

@dk1844 dk1844 commented Jul 7, 2025

This PR shows an experimental GET endpoint at /token/experimental/get-generate that supports
1 spnego negotiate from browser
2 basic auth

This endpoint will only work if config allows it - via loginsvc.rest.experimental.enabled=true (otherwise throws 409)

Test run:

Tested to work at
https://login-service-dev.npintdebdtools.aws.dsarena.com/token/experimental/get-generate

with Edge and Chromium.

Chrome with AuthNegotiateDelegateAllowlist set

Does not currently work in Chrome because it has AuthNegotiateDelegateAllowlist -- and LS is not in the allowed list. (We may try to add LS endpoint to be included)

Release notes:

  • experimental GET endpoint at /token/experimental/get-generate added (must be allowed in config via loginsvc.rest.experimental.enabled=true)

Closes #129

@dk1844 dk1844 requested a review from jakipatryk as a code owner July 7, 2025 08:47
@dk1844 dk1844 requested review from TheLydonKing and removed request for jakipatryk July 7, 2025 08:47
Copy link

github-actions bot commented Jul 7, 2025

JaCoCo code coverage report - scala:2.12.17

File Coverage [75.7%]
SecurityConfig.scala 88.37% 🍏
TokenController.scala 80.17% 🍏
ConfigProvider.scala 76.3%
RestResponseEntityExceptionHandler.scala 50.68%
ExperimentalRestConfig.scala 36.36%
ExperimentalFeaturesNotEnabledException.scala 0%
Total Project Coverage 68.57% 🍏

Copy link
Collaborator

@TheLydonKing TheLydonKing left a comment

Choose a reason for hiding this comment

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

LGTM

@dk1844 dk1844 merged commit d1e890a into master Aug 15, 2025
4 of 6 checks passed
@dk1844 dk1844 deleted the experimental/129-get-generate-negotiate branch August 15, 2025 11:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

PoC: attempt to do chrome negotiation on a get enpoint
2 participants