..
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-OAuthClient
=====================
.. image:: https://img.shields.io/github/license/inveniosoftware/invenio-oauthclient.svg
:target: https://github.com/inveniosoftware/invenio-oauthclient/blob/master/LICENSE
.. image:: https://github.com/inveniosoftware/invenio-oauthclient/workflows/CI/badge.svg
:target: https://github.com/inveniosoftware/invenio-oauthclient/actions
.. image:: https://img.shields.io/coveralls/inveniosoftware/invenio-oauthclient.svg
:target: https://coveralls.io/r/inveniosoftware/invenio-oauthclient
.. image:: https://img.shields.io/pypi/v/invenio-oauthclient.svg
:target: https://pypi.org/pypi/invenio-oauthclient
Invenio module that provides OAuth web authorization support.
OAuth client support is typically used to allow features such as social login
(e.g. Sign in with Twitter) and access to resources owned by a specific user
at a remote service. Both OAuth 1.0 and OAuth 2.0 are supported.
Features:
- Views: OAuth login and authorized endpoints, linked account settings and
sign-up handling.
- Client: A client to interact with remote applications.
- Contrib: Ready-to-use GitHub, ORCID, and CERN remote applications.
- Models: Persistence layer for OAuth access tokens including support for
storing extra data together with a token.
- Handlers: Customizable handlers for deciding what happens when a user
authorizes a request.
Further documentation is available on
https://invenio-oauthclient.readthedocs.io/
..
This file is part of Invenio.
Copyright (C) 2015-2023 CERN.
Copyright (C) 2024 Graz University of Technology.
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 5.1.0 (released 2024-12-12)
- fix: DeprecationWarning:
- fix: TypeError
- setup: move to flask-oauthlib-invenio
Version 5.0.0 (released 2024-12-06)
- fix: sqlalchemy.exc.ArgumentError:
- global: use invenio_base.jws not itsdangerous
- tests: apply changes for sqlalchemy>=2.0
- setup: bump major dependencies
Version 4.1.3 (release 2024-12-03)
- utils: improve and fix creation/update of groups
Version 4.1.2 (release 2024-11-30)
- setup: pin dependencies
- ci: use reusable workflow when publishing
Version 4.1.0 (released 2024-11-07)
- handlers: add basic error handling for roles creation
- fix: compat for flask-oauthlib
Version 4.1.0 (released 2024-11-07)
- setup: remove upper pins oauthlib,requests-oauthlib
- global: jws use from invenio-base
- fix: for flask >= 3.0.0 compatibility
Version 4.0.2 (released 2024-09-17)
- fix: inverted check for visible remote apps
Version 4.0.1 (released 2024-09-11)
- i18n: push translations
- keycloak: add `legacy_url_path` parameter to the `KeycloakSettingsHelper`
- global: explicitly set and use `hide` attribute for config
Version 4.0.0 (released 2024-03-23)
- fix: before_app_first_request deprecation
- installation: remove invenio-admin
- installation: switch to uritemplate to avoid dependency conflicts
Version 3.5.1 (released 2023-08-30)
- orcid: show registration form errors on validations errors
Version 3.5.0 (released 2023-08-30)
- oauth: handle properly workflow when user is not yet confirmed and auto-confirm is
disabled for remote
Version 3.4.1 (released 2023-08-16)
- utils: removed creation of UserNeed email
Version 3.4.0 (released 2023-08-09)
- groups: make groups fetching async
- load user and role needs on identity loaded
Version 3.3.0 (released 2023-07-24)
- settings: Improve layout for a11y
Version 3.2.0 (released 2023-07-24)
- authorize: refactor authorize/signup handlers
- update translations
Version 3.1.2 (released 2023-06-23)
- client: preserve "next" URL param on login redirection
Version 3.1.1 (released 2023-06-21)
- client: fix user confirmation
Version 3.1.0 (released 2023-06-20)
- client: add provider's logout url
Version 3.0.0 (released 2023-06-14)
- base client: add group handler
Version 2.3.0 (released 2023-03-13)
- OpenAIRE AAI sandbox remote moved to Keycloak.
- Keycloak settings helper accept configurable scopes for token request.
Version 2.2.0 (released 2023-03-02)
- remove deprecated flask_babelex dependency and imports
- upgrade invenio-i18n
Version 2.1.0 (released 2022-12-19)
- Increase minimal Python version to 3.7.
- Deprecate the old CERN OAuth contrib.
- Allow specific sign-up settings per OAuth app.
- Add signup `info_serialize` handler to allow serializing the
user info response.
Version 2.0.1 (released 2022-07-01)
- Remove Babel extension.
- Add german translations.
- Fix checkbox label display inside loops.
Version 2.0.0 (released 2022-05-24)
- Moved UserIdentity to Invenio-Accounts.
- Fixes to signup error handling.
Version 1.5.4 (released 2021-10-18)
- Add OpenAIRE AAI contrib.
Version 1.5.3 (released 2021-10-18)
- Unpin Flask.
Version 1.5.2 (released 2021-07-12)
- Add german translations
Version 1.5.1 (released 2021-05-26)
- Allow to automatically redirect to the external login provider under
certain conditions.
- Disable the possibility to disconnect the last external account to
always have at least one external account connected (when configured).
- Make registration form customizable to allow adding extra form fields
when the user login the first time.
- CERN contribs: fix bug that will execute login/logout signal for CERN
contribs even if the user logged in a different way.
Version 1.5.0 (released 2021-05-07)
- Keycloak: refactor settings helper to allow multiple instances of
configured keycloak authentication providers at the same time
- OAuth: create a new settings helper to set up in an easier way a OAuth
authentication provider.
Version 1.4.4 (released 2021-02-05)
- CERN OpenID: make /userinfo endpoint and JWT token decode parameters
configurable
Version 1.4.3 (released 2021-02-05)
- REST auth: add exception logger
Version 1.4.2 (released 2021-01-15)
- Add Keycloak contrib.
Version 1.4.1 (released 2021-01-04)
- Use `invenio-theme` THEME_ICONS config
- Fix disconnect button styling
Version 1.4.0 (released 2020-12-09)
- Use centrally managed test dependencies.
- Add CERN OpenID contrib.
- Migrate CI to GitHub Actions.
- Several UI styling fixes.
Version 1.4.0a1 (released 2020-06-22)
- Integrates Semantic-UI templates.
Version 1.3.1 (released 2020-06-03)
- Exports rest handlers.
Version 1.3.0 (released 2020-05-15)
- Introduce `InvenioOAuthClientREST` extension.
- The module can be used as a full REST OAuth service. For example, from
an SPA application. All responses are being handled by redirecting to
user's configured endpoints.
- The new configuration variable `OAUTHCLIENT_REST_REMOTE_APPS` defines the
registered applications that are using the REST OAuth workflow.
Version 1.2.1 (released 2020-04-17)
- Fix args from redirect target' encoding
Version 1.2.0 (released 2020-03-13)
- Centrally manage Flask dependency by invenio-base
- Drop support for Python 2.7
Version 1.1.3 (released 2019-07-29)
- Remove deprecated warnings from 3rd party modules
- Fix setup file extension
- Fix missing args from redirect target
Version 1.1.2 (released 2019-02-01)
- CERN OAuth: fix logout url
Version 1.1.1 (released 2019-01-22)
- CERN OAuth: filter authentication by IdentityClass
- Pin oauthlib lower than 3.0
Version 1.1.0 (released 2018-12-14)
Version 1.0.0 (released 2018-03-23)
- Initial public release.
Raw data
{
"_id": null,
"home_page": "https://github.com/inveniosoftware/invenio-oauthclient",
"name": "invenio-oauthclient",
"maintainer": null,
"docs_url": "https://pythonhosted.org/invenio-oauthclient/",
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "invenio oauth authentication",
"author": "CERN",
"author_email": "info@inveniosoftware.org",
"download_url": "https://files.pythonhosted.org/packages/11/ab/a05cf08235ae7e0ec831af642fd0534d1380c2822b71a65da7c5083faa86/invenio_oauthclient-5.1.0.tar.gz",
"platform": "any",
"description": "..\n This file is part of Invenio.\n Copyright (C) 2015-2018 CERN.\n\n Invenio is free software; you can redistribute it and/or modify it\n under the terms of the MIT License; see LICENSE file for more details.\n\n=====================\n Invenio-OAuthClient\n=====================\n\n.. image:: https://img.shields.io/github/license/inveniosoftware/invenio-oauthclient.svg\n :target: https://github.com/inveniosoftware/invenio-oauthclient/blob/master/LICENSE\n\n.. image:: https://github.com/inveniosoftware/invenio-oauthclient/workflows/CI/badge.svg\n :target: https://github.com/inveniosoftware/invenio-oauthclient/actions\n\n.. image:: https://img.shields.io/coveralls/inveniosoftware/invenio-oauthclient.svg\n :target: https://coveralls.io/r/inveniosoftware/invenio-oauthclient\n\n.. image:: https://img.shields.io/pypi/v/invenio-oauthclient.svg\n :target: https://pypi.org/pypi/invenio-oauthclient\n\n\nInvenio module that provides OAuth web authorization support.\n\nOAuth client support is typically used to allow features such as social login\n(e.g. Sign in with Twitter) and access to resources owned by a specific user\nat a remote service. Both OAuth 1.0 and OAuth 2.0 are supported.\n\nFeatures:\n\n- Views: OAuth login and authorized endpoints, linked account settings and\n sign-up handling.\n- Client: A client to interact with remote applications.\n- Contrib: Ready-to-use GitHub, ORCID, and CERN remote applications.\n- Models: Persistence layer for OAuth access tokens including support for\n storing extra data together with a token.\n- Handlers: Customizable handlers for deciding what happens when a user\n authorizes a request.\n\nFurther documentation is available on\nhttps://invenio-oauthclient.readthedocs.io/\n\n..\n This file is part of Invenio.\n Copyright (C) 2015-2023 CERN.\n Copyright (C) 2024 Graz University of Technology.\n\n Invenio is free software; you can redistribute it and/or modify it\n under the terms of the MIT License; see LICENSE file for more details.\n\nChanges\n=======\n\nVersion 5.1.0 (released 2024-12-12)\n\n- fix: DeprecationWarning:\n- fix: TypeError\n- setup: move to flask-oauthlib-invenio\n\nVersion 5.0.0 (released 2024-12-06)\n\n- fix: sqlalchemy.exc.ArgumentError:\n- global: use invenio_base.jws not itsdangerous\n- tests: apply changes for sqlalchemy>=2.0\n- setup: bump major dependencies\n\nVersion 4.1.3 (release 2024-12-03)\n\n- utils: improve and fix creation/update of groups\n\nVersion 4.1.2 (release 2024-11-30)\n\n- setup: pin dependencies\n- ci: use reusable workflow when publishing\n\nVersion 4.1.0 (released 2024-11-07)\n\n- handlers: add basic error handling for roles creation\n- fix: compat for flask-oauthlib\n\nVersion 4.1.0 (released 2024-11-07)\n\n- setup: remove upper pins oauthlib,requests-oauthlib\n- global: jws use from invenio-base\n- fix: for flask >= 3.0.0 compatibility\n\nVersion 4.0.2 (released 2024-09-17)\n\n- fix: inverted check for visible remote apps\n\nVersion 4.0.1 (released 2024-09-11)\n\n- i18n: push translations\n- keycloak: add `legacy_url_path` parameter to the `KeycloakSettingsHelper`\n- global: explicitly set and use `hide` attribute for config\n\nVersion 4.0.0 (released 2024-03-23)\n\n- fix: before_app_first_request deprecation\n- installation: remove invenio-admin\n- installation: switch to uritemplate to avoid dependency conflicts\n\nVersion 3.5.1 (released 2023-08-30)\n\n- orcid: show registration form errors on validations errors\n\nVersion 3.5.0 (released 2023-08-30)\n\n- oauth: handle properly workflow when user is not yet confirmed and auto-confirm is\n disabled for remote\n\nVersion 3.4.1 (released 2023-08-16)\n\n- utils: removed creation of UserNeed email\n\nVersion 3.4.0 (released 2023-08-09)\n\n- groups: make groups fetching async\n- load user and role needs on identity loaded\n\nVersion 3.3.0 (released 2023-07-24)\n\n- settings: Improve layout for a11y\n\nVersion 3.2.0 (released 2023-07-24)\n\n- authorize: refactor authorize/signup handlers\n- update translations\n\nVersion 3.1.2 (released 2023-06-23)\n\n- client: preserve \"next\" URL param on login redirection\n\nVersion 3.1.1 (released 2023-06-21)\n\n- client: fix user confirmation\n\nVersion 3.1.0 (released 2023-06-20)\n\n- client: add provider's logout url\n\nVersion 3.0.0 (released 2023-06-14)\n\n- base client: add group handler\n\nVersion 2.3.0 (released 2023-03-13)\n\n- OpenAIRE AAI sandbox remote moved to Keycloak.\n- Keycloak settings helper accept configurable scopes for token request.\n\nVersion 2.2.0 (released 2023-03-02)\n\n- remove deprecated flask_babelex dependency and imports\n- upgrade invenio-i18n\n\nVersion 2.1.0 (released 2022-12-19)\n\n- Increase minimal Python version to 3.7.\n- Deprecate the old CERN OAuth contrib.\n- Allow specific sign-up settings per OAuth app.\n- Add signup `info_serialize` handler to allow serializing the\n user info response.\n\nVersion 2.0.1 (released 2022-07-01)\n\n- Remove Babel extension.\n- Add german translations.\n- Fix checkbox label display inside loops.\n\nVersion 2.0.0 (released 2022-05-24)\n\n- Moved UserIdentity to Invenio-Accounts.\n- Fixes to signup error handling.\n\nVersion 1.5.4 (released 2021-10-18)\n\n- Add OpenAIRE AAI contrib.\n\nVersion 1.5.3 (released 2021-10-18)\n\n- Unpin Flask.\n\nVersion 1.5.2 (released 2021-07-12)\n\n- Add german translations\n\nVersion 1.5.1 (released 2021-05-26)\n\n- Allow to automatically redirect to the external login provider under\n certain conditions.\n- Disable the possibility to disconnect the last external account to\n always have at least one external account connected (when configured).\n- Make registration form customizable to allow adding extra form fields\n when the user login the first time.\n- CERN contribs: fix bug that will execute login/logout signal for CERN\n contribs even if the user logged in a different way.\n\nVersion 1.5.0 (released 2021-05-07)\n\n- Keycloak: refactor settings helper to allow multiple instances of\n configured keycloak authentication providers at the same time\n- OAuth: create a new settings helper to set up in an easier way a OAuth\n authentication provider.\n\nVersion 1.4.4 (released 2021-02-05)\n\n- CERN OpenID: make /userinfo endpoint and JWT token decode parameters\n configurable\n\nVersion 1.4.3 (released 2021-02-05)\n\n- REST auth: add exception logger\n\nVersion 1.4.2 (released 2021-01-15)\n\n- Add Keycloak contrib.\n\nVersion 1.4.1 (released 2021-01-04)\n\n- Use `invenio-theme` THEME_ICONS config\n- Fix disconnect button styling\n\nVersion 1.4.0 (released 2020-12-09)\n\n- Use centrally managed test dependencies.\n- Add CERN OpenID contrib.\n- Migrate CI to GitHub Actions.\n- Several UI styling fixes.\n\nVersion 1.4.0a1 (released 2020-06-22)\n\n- Integrates Semantic-UI templates.\n\nVersion 1.3.1 (released 2020-06-03)\n\n- Exports rest handlers.\n\nVersion 1.3.0 (released 2020-05-15)\n\n- Introduce `InvenioOAuthClientREST` extension.\n- The module can be used as a full REST OAuth service. For example, from\n an SPA application. All responses are being handled by redirecting to\n user's configured endpoints.\n- The new configuration variable `OAUTHCLIENT_REST_REMOTE_APPS` defines the\n registered applications that are using the REST OAuth workflow.\n\nVersion 1.2.1 (released 2020-04-17)\n\n- Fix args from redirect target' encoding\n\nVersion 1.2.0 (released 2020-03-13)\n\n- Centrally manage Flask dependency by invenio-base\n- Drop support for Python 2.7\n\nVersion 1.1.3 (released 2019-07-29)\n\n- Remove deprecated warnings from 3rd party modules\n- Fix setup file extension\n- Fix missing args from redirect target\n\nVersion 1.1.2 (released 2019-02-01)\n\n- CERN OAuth: fix logout url\n\nVersion 1.1.1 (released 2019-01-22)\n\n- CERN OAuth: filter authentication by IdentityClass\n- Pin oauthlib lower than 3.0\n\nVersion 1.1.0 (released 2018-12-14)\n\nVersion 1.0.0 (released 2018-03-23)\n\n- Initial public release.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "\"Invenio module that provides OAuth web authorization support.\"",
"version": "5.1.0",
"project_urls": {
"Homepage": "https://github.com/inveniosoftware/invenio-oauthclient"
},
"split_keywords": [
"invenio",
"oauth",
"authentication"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "54d6f11e750eaadf6589a60ed35fec554f1e622cbddc9ec206c2953a1136f41b",
"md5": "5b5777419ca3c0d23a6ac93b869541d8",
"sha256": "7564567db6bd0e1c4cc8d06c9cc6ae286a300bc77184b7545afcde115827d91e"
},
"downloads": -1,
"filename": "invenio_oauthclient-5.1.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "5b5777419ca3c0d23a6ac93b869541d8",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=3.7",
"size": 202887,
"upload_time": "2024-12-12T19:28:53",
"upload_time_iso_8601": "2024-12-12T19:28:53.747865Z",
"url": "https://files.pythonhosted.org/packages/54/d6/f11e750eaadf6589a60ed35fec554f1e622cbddc9ec206c2953a1136f41b/invenio_oauthclient-5.1.0-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "11aba05cf08235ae7e0ec831af642fd0534d1380c2822b71a65da7c5083faa86",
"md5": "a7d78cf9b97532ec90b0f185976b99e6",
"sha256": "c5e0485908113c07b1395ba087b1aba08ed70bc18b6ad1daf16ab7116ffee686"
},
"downloads": -1,
"filename": "invenio_oauthclient-5.1.0.tar.gz",
"has_sig": false,
"md5_digest": "a7d78cf9b97532ec90b0f185976b99e6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 125264,
"upload_time": "2024-12-12T19:28:56",
"upload_time_iso_8601": "2024-12-12T19:28:56.243416Z",
"url": "https://files.pythonhosted.org/packages/11/ab/a05cf08235ae7e0ec831af642fd0534d1380c2822b71a65da7c5083faa86/invenio_oauthclient-5.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-12 19:28:56",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "inveniosoftware",
"github_project": "invenio-oauthclient",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "invenio-oauthclient"
}