Skip to main content

Eve Negotiable authentication

Project description


An auth module for Eve. Allows for easy configuration and handling of multiple auth schemes - including schemes like Digest which require "negotiation".

NegotiableAuth is an abstract base class. It uses the authparser library, which parses the Authorization: header and dispatches to handlers. As a result, there is only one function to override:

process_claims(claims, allowed_roles, resource, method) This is where you will use the passed to set up the Eve authorization context (e.g. calling set_request_auth_value()).

  • claims - a dict of name-value pairs containing the claims provided by the scheme handlers, derived from parsing the Authorization: header
  • allowed_roles - the user's allowed roles, passed through from BasicAuth
  • resource - the resource being requested
  • method - the HTTP verb of the request
  • Return True/False whether the user is authenticated.

When NegotiableAuth calls AuthParser, it passes the following kwargs: get_user_record() - passed through to the scheme's user_record_fn

  • allowed_roles
  • resource
  • method
  • request

get_challenge_header() - passed through to the scheme's challenge_fn

  • request

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for eve-negotiable-auth, version 0.9.4
Filename, size File type Python version Upload date Hashes
Filename, size eve_negotiable_auth-0.9.4-py3-none-any.whl (4.0 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size eve-negotiable-auth-0.9.4.tar.gz (2.7 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page