Metadata-Version: 2.1
Name: invenio-oauth2server
Version: 1.3.0
Summary: Invenio module that implements OAuth 2 server.
Home-page: https://github.com/inveniosoftware/invenio-oauth2server
Author: CERN
Author-email: info@inveniosoftware.org
License: MIT
Keywords: invenio OAuth2 server
Platform: any
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Development Status :: 5 - Production/Stable
Requires-Dist: cachelib (>=0.1)
Requires-Dist: Flask-Breadcrumbs (>=0.4.0)
Requires-Dist: Flask-OAuthlib (>=0.9.5)
Requires-Dist: Flask-WTF (>=0.14.3)
Requires-Dist: future (>=0.16.0)
Requires-Dist: invenio-accounts (>=1.3.1)
Requires-Dist: invenio-base (>=1.2.3)
Requires-Dist: invenio-i18n (>=1.2.0)
Requires-Dist: pyjwt (>=1.5.0)
Requires-Dist: requests-oauthlib (<1.2.0,>=1.1.0)
Requires-Dist: WTForms-Alchemy (>=0.15.0)
Provides-Extra: admin
Requires-Dist: invenio-admin (>=1.2.1) ; extra == 'admin'
Provides-Extra: all
Requires-Dist: invenio-admin (>=1.2.1) ; extra == 'all'
Requires-Dist: Sphinx (<3,>=2) ; extra == 'all'
Requires-Dist: redis (>=2.10.5) ; extra == 'all'
Requires-Dist: pytest-invenio (>=1.4.0) ; extra == 'all'
Provides-Extra: docs
Requires-Dist: Sphinx (<3,>=2) ; extra == 'docs'
Provides-Extra: mysql
Requires-Dist: invenio-db[mysql,versioning] (>=1.0.8) ; extra == 'mysql'
Provides-Extra: postgresql
Requires-Dist: invenio-db[postgresql,versioning] (>=1.0.8) ; extra == 'postgresql'
Provides-Extra: redis
Requires-Dist: redis (>=2.10.5) ; extra == 'redis'
Provides-Extra: sqlite
Requires-Dist: invenio-db[versioning] (>=1.0.8) ; extra == 'sqlite'
Provides-Extra: tests
Requires-Dist: pytest-invenio (>=1.4.0) ; extra == 'tests'

..
    This file is part of Invenio.
    Copyright (C) 2015-2018 CERN.

    Invenio is free software; you can redistribute it and/or modify it
    under the terms of the MIT License; see LICENSE file for more details.

======================
 Invenio-OAuth2Server
======================

.. image:: https://img.shields.io/github/license/inveniosoftware/invenio-oauth2server.svg
        :target: https://github.com/inveniosoftware/invenio-oauth2server/blob/master/LICENSE

.. image:: https://github.com/inveniosoftware/invenio-oauth2server/workflows/CI/badge.svg
        :target: https://github.com/inveniosoftware/invenio-oauth2server/actions

.. image:: https://img.shields.io/coveralls/inveniosoftware/invenio-oauth2server.svg
        :target: https://coveralls.io/r/inveniosoftware/invenio-oauth2server

.. image:: https://img.shields.io/pypi/v/invenio-oauth2server.svg
        :target: https://pypi.org/pypi/invenio-oauth2server


Invenio module that implements OAuth 2 server.

* Free software: MIT license
* Documentation: https://invenio-oauth2server.readthedocs.io/

Features
========
* Implements the OAuth 2.0 authentication protocol.
    - Provides REST API to provide access tokens.
    - Provides decorators that can be used to restrict access to resources.
* Handles authentication using JSON Web Tokens.
* Adds support for CSRF protection in REST API.

..
    This file is part of Invenio.
    Copyright (C) 2015-2018 CERN.

    Invenio is free software; you can redistribute it and/or modify it
    under the terms of the MIT License; see LICENSE file for more details.

Changes
=======

Version 1.3.0 (released 2020-12-09)

- Integrates Semantic-UI templates.
- Sets `cancel` button's color to Semantic-UI default.

Version 1.2.0 (released 2020-05-14)

- Allow bypassing CSRF checks when using bearer tokens.

Version 1.1.1 (released 2020-05-11)

- Deprecated Python versions lower than 3.6.0. Now supporting 3.6.0 and 3.7.0.
- Minimum version of Invenio-Accounts bumped to v1.2.1 due WTForms moving the
  email validation to an optional dependency.
- Maximum version of Sphinx set to 3 (lower than) due to an error with
  working outside the application context.
- Maximum version of SQLAlchemy-Utils set to 0.36 due to breaking changes
  with MySQL (VARCHAR length).

Version 1.1.0 (released 2020-03-10)

- Provides compatibility with werkzeug 1.0.0 for flask_oauthlib

Version 1.0.5 (released 2020-05-11)

- Deprecated Python versions lower than 3.6.0. Now supporting 3.6.0 and 3.7.0.
- Minimum version of Invenio-Accounts set to v1.1.4 due WTForms moving the
  email validation to an optional dependency.
- Minimum version of Flask-BableEx set to v0.9.4 due Werkzeug breaking imports.
- Minimum version of oauthlib set to v2.1.0.
- Maximum version of Sphinx set to 3 (lower than) due to an error with
  working outside the application context.
- Maximum version of SQLAlchemy-Utils set to 0.36 due to breaking changes
  with MySQL (VARCHAR length).

Version 1.0.4 (released 2019-12-05)

- Removes updating the ``expires`` for personal tokens.
- Removes ``OAUTH2_PROVIDER_TOKEN_EXPIRES_IN`` from configuration.

Version 1.0.3 (released 2019-01-15)

- Restrict oauthlib to latest v2.
- Restrict requests-oauthlib lower than 1.2.0 because of oauthlib 3.

Version 1.0.2 (released 2018-11-02)

- Fix incosistent OAuth2 state initialization between UI and REST applications.
- Basic token management CLI commands for creating/deleting personal access
  tokens.
- Better token creation warning messages.

Version 1.0.1 (released 2018-05-25)

- Flask v1.0 support.

Version 1.0.0 (released 2018-03-23)

- Initial public release.


