mirror of
https://github.com/BerriAI/litellm.git
synced 2026-10-16 04:29:31 +00:00
User-configured pass-through endpoints with ``auth: false`` are explicitly unauthenticated — the builder short-circuits at check_api_key_for_custom_headers_or_pass_through_endpoints and returns a fresh empty UserAPIKeyAuth() without an api_key, user_id, or role. Pre-refactor, that empty token never reached common_checks. After the centralization, it does — and common_checks rejects it as admin-only, breaking every Langfuse / custom unauthenticated pass-through. This is the same regression class as the public-routes one: a builder fast-path whose return value cannot survive common_checks. Honor the same contract here — when the matched endpoint config has auth != True, skip the centralized gate. auth=True endpoints still run the full gate (covered by a companion test). No security regression: ``auth: false`` is the operator's explicit opt-out from LiteLLM auth on this path. The original commit closed seven authenticated bypasses; this exemption applies only to a path the operator has already declared unauthenticated. |
||
|---|---|---|
| .. | ||
| test_auth_checks.py | ||
| test_auth_exception_handler.py | ||
| test_auth_hot_path_network_requests.py | ||
| test_auth_utils.py | ||
| test_cli_auth.py | ||
| test_custom_auth_end_user_budget.py | ||
| test_handle_jwt.py | ||
| test_info_routes.py | ||
| test_litellm_license.py | ||
| test_login_utils.py | ||
| test_mcp_ip_filtering.py | ||
| test_model_checks.py | ||
| test_model_checks_fallbacks.py | ||
| test_multi_budget_windows.py | ||
| test_object_permission_loading.py | ||
| test_onboarding.py | ||
| test_organization_budget_enforcement.py | ||
| test_password_hashing.py | ||
| test_route_checks.py | ||
| test_team_member_budget.py | ||
| test_unmapped_model_budget_enforcement.py | ||
| test_user_api_key_auth.py | ||