From 1c38f705a746e8c3f1ba42569357fdf42b7062bf Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Fri, 31 Mar 2017 11:13:37 -0400 Subject: [PATCH] Fixes #1021: Corrected evaluation of API token expiration time --- netbox/users/models.py | 6 +++--- netbox/utilities/api.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/netbox/users/models.py b/netbox/users/models.py index 0dd303104..16c5005ef 100644 --- a/netbox/users/models.py +++ b/netbox/users/models.py @@ -39,6 +39,6 @@ class Token(models.Model): @property def is_expired(self): - if self.expires is not None and timezone.now() > self.expires: - return True - return False + if self.expires is None or timezone.now() < self.expires: + return False + return True diff --git a/netbox/utilities/api.py b/netbox/utilities/api.py index ca4384f08..791a504a6 100644 --- a/netbox/utilities/api.py +++ b/netbox/utilities/api.py @@ -30,7 +30,7 @@ class TokenAuthentication(authentication.TokenAuthentication): raise exceptions.AuthenticationFailed("Invalid token") # Enforce the Token's expiration time, if one has been set. - if token.expires and not token.is_expired: + if token.is_expired: raise exceptions.AuthenticationFailed("Token expired") if not token.user.is_active: