Closed jcwilson closed 5 years ago
I can increase the coverage on the new code (and maybe on some of the older code, too), but I don't have the insight necessary yet to address the issues causing older versions of python to fail their tests. Is that something I could get some assistance with?
Just checking to see if anyone could take a look at this. :)
This PR also contains the changes in #10, but in a way that also works for older versions of python.
@jcwilson Thanks a lot for this extensive fix. Really appreciate it.
This adds support for the Hawk "Holder-Of-Key Authentication Scheme" backend.
This also updates the
MultiAuthBackend
to collect any challenges from failed backends and provide them on the synthesizedHTTPUnauthorized
error if no backend succeeds in authenticating the request.The hawk library, and now the jwt library, are optional dependencies that must be specified in the client project's requirements as "extras". This ensures that clients only install the backend libraries necessary to their use case.
This also cleans up some redundant specification of default values when raising
falcon.HTTPUnauthorized
exceptions from the backend code.Lastly, it adds testing support for 3.7 and adds classifier strings to
setup.py