Просмотр исходного кода

Exclude /metrics from LOGIN_REQUIRED

Lars Weiler 6 лет назад
Родитель
Сommit
99f0e7b939
1 измененных файлов с 3 добавлено и 2 удалено
  1. 3 2
      netbox/utilities/middleware.py

+ 3 - 2
netbox/utilities/middleware.py

@@ -19,9 +19,10 @@ class LoginRequiredMiddleware(object):
     def __call__(self, request):
         if LOGIN_REQUIRED and not request.user.is_authenticated:
             # Redirect unauthenticated requests to the login page. API requests are exempt from redirection as the API
-            # performs its own authentication.
+            # performs its own authentication. Also metrics can be read without login.
             api_path = reverse('api-root')
-            if not request.path_info.startswith(api_path) and request.path_info != settings.LOGIN_URL:
+            if (not (request.path_info.startswith(api_path) or request.path_info.startswith('/metrics'))
+              and request.path_info != settings.LOGIN_URL):
                 return HttpResponseRedirect('{}?next={}'.format(settings.LOGIN_URL, request.path_info))
         return self.get_response(request)