Skip to content

Commit 368073d

Browse files
author
Jaume
committed
Bug solved
1 parent f9ec58a commit 368073d

2 files changed

Lines changed: 14 additions & 3 deletions

File tree

‎src/auth/identification.py‎

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ class Identification(metaclass=abc.ABCMeta):
1515
def identify(self, request_handler):
1616
pass
1717

18+
@abc.abstractmethod
19+
def identify_for_audit(self, request_handler):
20+
pass
21+
1822

1923
class AuthBasedIdentification(Identification):
2024
def __init__(self, authentication_provider) -> None:
@@ -24,9 +28,11 @@ def identify(self, request_handler):
2428
current_user = self._authentication_provider.get_username(request_handler)
2529
if not current_user:
2630
raise Exception('Not authenticated')
27-
2831
return current_user
2932

33+
def identify_for_audit(self, request_handler):
34+
return self.identify(request_handler)
35+
3036

3137
class IpBasedIdentification(Identification):
3238
EXPIRES_DAYS = 14
@@ -69,6 +75,12 @@ def identify(self, request_handler):
6975

7076
return new_id
7177

78+
def identify_for_audit(self, request_handler):
79+
remote_ip = request_handler.request.remote_ip
80+
if (remote_ip in self._trusted_ips) and (self._user_header_name):
81+
return request_handler.request.headers.get(self._user_header_name, None)
82+
return None
83+
7284
def _resolve_ip(self, request_handler):
7385
proxied_ip = tornado_utils.get_proxied_ip(request_handler)
7486
if proxied_ip:

‎src/utils/audit_utils.py‎

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,7 @@
1818
def get_all_audit_names(request_handler):
1919
result = {}
2020

21-
auth = request_handler.application.auth
22-
auth_username = auth.get_username(request_handler)
21+
auth_username = request_handler.application.identification.identify_for_audit(request_handler)
2322
if auth_username:
2423
result[AUTH_USERNAME] = auth_username
2524

0 commit comments

Comments
 (0)