Compare commits
3 Commits
83abe85c81
...
e710760497
Author | SHA1 | Date |
---|---|---|
Andrey Kislyuk | e710760497 | |
Andrey Kislyuk | c22bbb74b1 | |
Andrey Kislyuk | 198e2dae5c |
|
@ -1,3 +1,10 @@
|
|||
Changes for v0.7.1 (2022-04-19)
|
||||
===============================
|
||||
|
||||
- Add typing information
|
||||
|
||||
- Documentation improvements
|
||||
|
||||
Changes for v0.7.0 (2022-04-14)
|
||||
===============================
|
||||
|
||||
|
|
1
Makefile
1
Makefile
|
@ -2,6 +2,7 @@ SHELL=/bin/bash
|
|||
|
||||
lint:
|
||||
flake8
|
||||
mypy requests_http_signature
|
||||
|
||||
test: lint
|
||||
python ./test/test.py -v
|
||||
|
|
|
@ -2,7 +2,7 @@ import datetime
|
|||
import email.utils
|
||||
import hashlib
|
||||
import secrets
|
||||
from typing import List, Union
|
||||
from typing import Union, Sequence, Type
|
||||
|
||||
import http_sfv
|
||||
import requests
|
||||
|
@ -10,7 +10,7 @@ import requests
|
|||
from requests.exceptions import RequestException
|
||||
from http_message_signatures import (algorithms, HTTPSignatureComponentResolver, HTTPSignatureKeyResolver, # noqa: F401
|
||||
HTTPMessageSigner, HTTPMessageVerifier, HTTPSignatureAlgorithm, InvalidSignature)
|
||||
from http_message_signatures.structures import CaseInsensitiveDict
|
||||
from http_message_signatures.structures import CaseInsensitiveDict, VerifyResult
|
||||
|
||||
|
||||
class RequestsHttpSignatureException(RequestException):
|
||||
|
@ -84,11 +84,11 @@ class HTTPSignatureAuth(requests.auth.AuthBase):
|
|||
_auto_cover_header_fields = {"authorization", "content-digest", "date"}
|
||||
|
||||
def __init__(self, *,
|
||||
signature_algorithm: HTTPSignatureAlgorithm,
|
||||
signature_algorithm: Type[HTTPSignatureAlgorithm],
|
||||
key: bytes = None,
|
||||
key_id: str,
|
||||
key_resolver: HTTPSignatureKeyResolver = None,
|
||||
covered_component_ids: List[str] = ("@method", "@authority", "@target-uri"),
|
||||
covered_component_ids: Sequence[str] = ("@method", "@authority", "@target-uri"),
|
||||
label: str = None,
|
||||
include_alg: bool = True,
|
||||
use_nonce: bool = False,
|
||||
|
@ -168,10 +168,10 @@ class HTTPSignatureAuth(requests.auth.AuthBase):
|
|||
|
||||
@classmethod
|
||||
def verify(cls, message: Union[requests.PreparedRequest, requests.Response], *,
|
||||
require_components: List[str] = ("@method", "@authority", "@target-uri"),
|
||||
signature_algorithm: HTTPSignatureAlgorithm,
|
||||
require_components: Sequence[str] = ("@method", "@authority", "@target-uri"),
|
||||
signature_algorithm: Type[HTTPSignatureAlgorithm],
|
||||
key_resolver: HTTPSignatureKeyResolver,
|
||||
max_age: datetime.timedelta = datetime.timedelta(days=1)):
|
||||
max_age: datetime.timedelta = datetime.timedelta(days=1)) -> VerifyResult:
|
||||
"""
|
||||
Verify an HTTP message signature.
|
||||
|
||||
|
|
6
setup.py
6
setup.py
|
@ -15,7 +15,7 @@ setup(
|
|||
},
|
||||
setup_requires=['setuptools_scm >= 3.4.3'],
|
||||
install_requires=[
|
||||
"http-message-signatures >= 0.4.0",
|
||||
"http-message-signatures >= 0.4.3",
|
||||
"http-sfv >= 0.9.3",
|
||||
"requests >= 2.25.1"
|
||||
],
|
||||
|
@ -26,10 +26,14 @@ setup(
|
|||
"build",
|
||||
"wheel",
|
||||
"mypy",
|
||||
"types-requests",
|
||||
]
|
||||
},
|
||||
packages=find_packages(exclude=['test']),
|
||||
include_package_data=True,
|
||||
package_data={
|
||||
"http_message_signatures": ["py.typed"],
|
||||
},
|
||||
platforms=['MacOS X', 'Posix'],
|
||||
test_suite='test',
|
||||
classifiers=[
|
||||
|
|
Loading…
Reference in New Issue