From 7811b43e34e6ae441f9f88e6621714d9bd6578ba Mon Sep 17 00:00:00 2001 From: Georg Krause Date: Sat, 24 Apr 2021 10:15:23 +0200 Subject: [PATCH] Make created field optional on verification --- requests_http_signature/__init__.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/requests_http_signature/__init__.py b/requests_http_signature/__init__.py index fe37e29..b2781a5 100644 --- a/requests_http_signature/__init__.py +++ b/requests_http_signature/__init__.py @@ -87,7 +87,7 @@ class HTTPSignatureAuth(requests.auth.AuthBase): if header == "(request-target)": path_url = requests.models.RequestEncodingMixin.path_url.fget(request) sts.append("{}: {} {}".format(header, request.method.lower(), path_url)) - elif header == "(created)": + elif header == "(created)" and created_timestamp: sts.append("{}: {}".format(header, created_timestamp)) elif header == "(expires)": assert (expires_timestamp is not None), \ @@ -157,7 +157,7 @@ class HTTPSignatureAuth(requests.auth.AuthBase): for field in "keyId", "algorithm", "signature": assert field in sig_struct, 'Required signature parameter "{}" not found'.format(field) assert sig_struct["algorithm"] in self.known_algorithms, "Unknown signature algorithm" - created_timestamp = int(sig_struct['created']) + created_timestamp = int(sig_struct['created']) if 'created' in sig_struct else None expires_timestamp = sig_struct.get('expires') if expires_timestamp is not None: expires_timestamp = int(expires_timestamp)