-
Notifications
You must be signed in to change notification settings - Fork 1.5k
[PM-27260] SSO cookie vending #6903
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
base: pm-29144-communication-in-config-api
Are you sure you want to change the base?
[PM-27260] SSO cookie vending #6903
Conversation
|
Claude finished @dereknance's task in 1m 50s —— View job Code Review: SSO Cookie VendingSummaryThis PR adds an SSO cookie vending endpoint for self-hosted installs, allowing clients to obtain authentication cookies from a reverse proxy/load balancer via a Findings
DetailsCase Sensitivity Bug: The controller uses case-sensitive comparison ( ObservationsPositive aspects:
Note: The |
| public IActionResult Get() | ||
| { | ||
| var bootstrap = _globalSettings.Communication?.Bootstrap; | ||
| if (string.IsNullOrEmpty(bootstrap) || bootstrap != "ssoCookieVendor") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
WARNING: Case sensitivity mismatch with ConfigResponseModel
This comparison is case-sensitive (bootstrap != "ssoCookieVendor"), but ConfigResponseModel.CommunicationSettings.Build() uses case-insensitive comparison:
var bootstrap = globalSettings.Communication?.Bootstrap?.ToLowerInvariant();
// ...
"ssocookievendor" => new CommunicationSettings { ... }If an admin configures Bootstrap = "SsoCookieVendor" or Bootstrap = "SSOCOOKIEVENDOR":
- The
/configendpoint will returnCommunicationSettings(since it lowercases) - This endpoint will return 404 (since the comparison is case-sensitive)
This will cause confusing behavior where clients see the feature as configured but cannot use it.
| if (string.IsNullOrEmpty(bootstrap) || bootstrap != "ssoCookieVendor") | |
| if (string.IsNullOrEmpty(bootstrap) || !bootstrap.Equals("ssoCookieVendor", StringComparison.OrdinalIgnoreCase)) |
|
|
New Issues (2)Checkmarx found the following issues in this Pull Request
Fixed Issues (4)Great job! The following issues were fixed in this Pull Request
|
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## pm-29144-communication-in-config-api #6903 +/- ##
========================================================================
+ Coverage 56.06% 56.10% +0.04%
========================================================================
Files 1968 1969 +1
Lines 86950 87011 +61
Branches 7746 7758 +12
========================================================================
+ Hits 48746 48816 +70
+ Misses 36401 36390 -11
- Partials 1803 1805 +2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|





🎟️ Tracking
PM-27260
📔 Objective
For self-hosted installs, the
/api/sso-cookie-vendorendpoint provides clients with a means to obtain a cookie being used to authenticate requests at a reverse proxy, load balancer, etc.⏰ Reminders before review
🦮 Reviewer guidelines
:+1:) or similar for great changes:memo:) or ℹ️ (:information_source:) for notes or general info:question:) for questions:thinking:) or 💭 (:thought_balloon:) for more open inquiry that's not quite a confirmed issue and could potentially benefit from discussion:art:) for suggestions / improvements:x:) or:warning:) for more significant problems or concerns needing attention:seedling:) or ♻️ (:recycle:) for future improvements or indications of technical debt:pick:) for minor or nitpick changes