Skip to main content

Invenio user management and authentication.

Project description

https://img.shields.io/github/license/inveniosoftware/invenio-accounts.svg https://img.shields.io/travis/inveniosoftware/invenio-accounts.svg https://img.shields.io/coveralls/inveniosoftware/invenio-accounts.svg https://img.shields.io/pypi/v/invenio-accounts.svg

Invenio user management and authentication.

Features:

  • User and role management.

  • User registration, password reset/recovery and email verification.

  • Administration interface and CLI for managing users.

  • Session based authentication with session theft protection as well as “remember me” support.

  • Strong cryptographic password hashing with support for migrating password hashes (including Invenio v1.x) to new stronger algorithms.

  • Session activity tracking allowing users to e.g. logout of all devices.

  • Server-side session management.

  • JSON Web Token encoding and decoding support useful for e.g. CSRF-protection in REST APIs.

Invenio-Accounts relies on the following community packages to do all the heavy-lifting:

Further documentation is available on https://invenio-accounts.readthedocs.io/

Changes

Version 1.2.0 (released 2020-03-09)

  • Replaces Flask dependency with centrally managed invenio-base

Version 1.1.3 (released 2020-02-19)

  • Replaces Flask-CeleryExt to invenio-celery due to version incompatibilities with celery, kombu. Removes Flask-BabelExt already provided by invenio-i18n

Version 1.1.2 (released 2020-02-12)

  • Fixes requirements for Flask, Werkzeug and Flask-Login due to incompatibilities of latest released modules.

Version 1.1.1 (released 2019-03-10)

  • Fixes an issue where the HTTP headers X-Session-ID and X-User-ID are added even if the value is not known. This causes ‘None’ to be logged in Nginx, instead of simply ‘-‘.

Version 1.1.0 (released 2019-02-15)

  • Added support for for adding the user id and session id of the current user into the HTTP headers (X-User-ID and X-Session-ID) for upstream servers to use. For instance, this way current user/session ids can be logged by Nginx into the web server access logs. The feature is off by default and can be enabled via the ACCOUNTS_USERINFO_HEADERS configuration variable. Note: The upstream server should strip the two headers from the response returned to the client. The purpose is purely to allow upstream proxies like Nginx to log the user/session id for a specific request.

  • Changed token expiration from 5 days to 30 minutes for the password reset token and email confirmation token. Using the tokens will as a side-effect login in the user, which means that if the link is leaked (e.g. forwarded by the users themselves), then another person can use the link to access the account. Flask-Security v3.1.0 addresses this issue, but has not yet been released.

  • Fixes issue that could rehash the user password in the adminstration interface.

Version 1.0.2 (released 2018-10-31)

  • Added AnonymousIdentity loader to app initialisation to fix the any_user Need in Invenio-Access.

Version 1.0.1 (released 2018-05-25)

  • Bumped Flask-CeleryExt from v0.3.0 to v0.3.1 to fix issue with Celery version string not being parsable and thus causing problems with installing Celery.

Version 1.0.0 (released 2018-03-23)

  • Initial public release.

Project details


Release history Release notifications | RSS feed

This version

1.2.0

Download files

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

Source Distribution

invenio-accounts-1.2.0.tar.gz (109.1 kB view details)

Uploaded Source

Built Distribution

invenio_accounts-1.2.0-py2.py3-none-any.whl (58.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file invenio-accounts-1.2.0.tar.gz.

File metadata

  • Download URL: invenio-accounts-1.2.0.tar.gz
  • Upload date:
  • Size: 109.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.7

File hashes

Hashes for invenio-accounts-1.2.0.tar.gz
Algorithm Hash digest
SHA256 9730c261a4a0cb6b16d27a669e355a455b8e27ba1d13ac46e64b13833a3695ab
MD5 2bbbbbe05358c90c22e790bf2193dc9b
BLAKE2b-256 e625f86ba664366c45c08cf9065206b894b58bf41db21fc7e684f72f0371be12

See more details on using hashes here.

Provenance

File details

Details for the file invenio_accounts-1.2.0-py2.py3-none-any.whl.

File metadata

  • Download URL: invenio_accounts-1.2.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 58.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.7

File hashes

Hashes for invenio_accounts-1.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 196f433a38f5ac6cc3081c1cbbef1422f6d993f3a2cb9f598db51cbae42e3a4a
MD5 c22b04c9d16baf7ce1c279340b42b673
BLAKE2b-256 8969e02354aad0fac0f3599a141b796e3a8711da542a98918fe357aca3c1e58d

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page