mirror of
https://github.com/BerriAI/litellm.git
synced 2025-04-25 18:54:30 +00:00
check use_x_forwarded_for
This commit is contained in:
parent
526b196f83
commit
ab208eb546
1 changed files with 13 additions and 3 deletions
|
@ -124,7 +124,9 @@ async def user_api_key_auth(
|
||||||
await check_if_request_size_is_safe(request=request)
|
await check_if_request_size_is_safe(request=request)
|
||||||
|
|
||||||
is_valid_ip = _check_valid_ip(
|
is_valid_ip = _check_valid_ip(
|
||||||
allowed_ips=general_settings.get("allowed_ips", None), request=request
|
allowed_ips=general_settings.get("allowed_ips", None),
|
||||||
|
use_x_forwarded_for=general_settings.get("use_x_forwarded_for", False),
|
||||||
|
request=request,
|
||||||
)
|
)
|
||||||
|
|
||||||
if not is_valid_ip:
|
if not is_valid_ip:
|
||||||
|
@ -1206,14 +1208,22 @@ def _get_user_role(
|
||||||
return role
|
return role
|
||||||
|
|
||||||
|
|
||||||
def _check_valid_ip(allowed_ips: Optional[List[str]], request: Request) -> bool:
|
def _check_valid_ip(
|
||||||
|
allowed_ips: Optional[List[str]],
|
||||||
|
request: Request,
|
||||||
|
use_x_forwarded_for: Optional[bool] = False,
|
||||||
|
) -> bool:
|
||||||
"""
|
"""
|
||||||
Returns if ip is allowed or not
|
Returns if ip is allowed or not
|
||||||
"""
|
"""
|
||||||
if allowed_ips is None: # if not set, assume true
|
if allowed_ips is None: # if not set, assume true
|
||||||
return True
|
return True
|
||||||
|
|
||||||
if request.client is not None:
|
# if general_settings.get("use_x_forwarded_for") is True then use x-forwarded-for
|
||||||
|
client_ip = None
|
||||||
|
if use_x_forwarded_for is True:
|
||||||
|
client_ip = request.headers["x-forwarded-for"]
|
||||||
|
elif request.client is not None:
|
||||||
client_ip = request.client.host
|
client_ip = request.client.host
|
||||||
else:
|
else:
|
||||||
client_ip = None
|
client_ip = None
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue