diff --git a/eox_tenant/pipeline.py b/eox_tenant/pipeline.py index 6b9ec6db..c7739079 100644 --- a/eox_tenant/pipeline.py +++ b/eox_tenant/pipeline.py @@ -1,9 +1,10 @@ """ The pipeline module defines functions that are used in the third party authentication flow """ +from social_core.exceptions import AuthFailed -class EoxTenantAuthException(ValueError): +class EoxTenantAuthException(AuthFailed): """Auth process exception.""" def __init__(self, backend, *args, **kwargs): diff --git a/requirements/base.in b/requirements/base.in index 33396059..5e06a789 100644 --- a/requirements/base.in +++ b/requirements/base.in @@ -9,3 +9,4 @@ django-mysql jsonfield edx-opaque-keys[django] openedx_filters +social-auth-core diff --git a/requirements/base.txt b/requirements/base.txt index f3e88ef7..db137b40 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -6,7 +6,19 @@ # asgiref==3.7.2 # via django -django==3.2.23 +certifi==2024.2.2 + # via requests +cffi==1.16.0 + # via cryptography +charset-normalizer==3.3.2 + # via requests +cryptography==42.0.2 + # via social-auth-core +defusedxml==0.8.0rc2 + # via + # python3-openid + # social-auth-core +django==3.2.24 # via # -c requirements/constraints.txt # -r requirements/base.in @@ -19,7 +31,7 @@ django-crum==0.7.9 # via # -c requirements/constraints.txt # -r requirements/base.in -django-mysql==4.7.1 +django-mysql==4.9.0 # via # -c requirements/constraints.txt # -r requirements/base.in @@ -31,31 +43,53 @@ edx-opaque-keys[django]==2.3.0 # via # -c requirements/constraints.txt # -r requirements/base.in +idna==3.6 + # via requests jsonfield==3.1.0 # via # -c requirements/constraints.txt # -r requirements/base.in +oauthlib==3.2.2 + # via + # requests-oauthlib + # social-auth-core openedx-filters==1.2.0 # via # -c requirements/constraints.txt # -r requirements/base.in pbr==6.0.0 # via stevedore +pycparser==2.21 + # via cffi +pyjwt==2.8.0 + # via social-auth-core pymongo==3.13.0 # via # -c requirements/constraints.txt # edx-opaque-keys -pytz==2023.3.post1 +python3-openid==3.2.0 + # via social-auth-core +pytz==2024.1 # via # django # djangorestframework +requests==2.31.0 + # via + # requests-oauthlib + # social-auth-core +requests-oauthlib==1.3.1 + # via social-auth-core six==1.16.0 # via # -c requirements/constraints.txt # -r requirements/base.in +social-auth-core==4.5.2 + # via -r requirements/base.in sqlparse==0.4.4 # via django stevedore==5.1.0 # via edx-opaque-keys -typing-extensions==4.8.0 +typing-extensions==4.9.0 # via asgiref +urllib3==2.2.0 + # via requests diff --git a/requirements/django.txt b/requirements/django.txt index d296127a..7eec28f9 100644 --- a/requirements/django.txt +++ b/requirements/django.txt @@ -1 +1 @@ -django==3.2.23 +django==3.2.24 diff --git a/requirements/pip-tools.txt b/requirements/pip-tools.txt index ea347319..0e882265 100644 --- a/requirements/pip-tools.txt +++ b/requirements/pip-tools.txt @@ -8,7 +8,7 @@ build==1.0.3 # via pip-tools click==8.1.7 # via pip-tools -importlib-metadata==6.8.0 +importlib-metadata==7.0.1 # via build packaging==23.2 # via build @@ -21,7 +21,7 @@ tomli==2.0.1 # build # pip-tools # pyproject-hooks -wheel==0.41.3 +wheel==0.42.0 # via pip-tools zipp==3.17.0 # via importlib-metadata diff --git a/requirements/test.txt b/requirements/test.txt index 40abf287..2b11a71a 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -8,17 +8,38 @@ asgiref==3.7.2 # via # -r requirements/base.txt # django -astroid==2.11.7 +astroid==2.15.8 # via pylint +certifi==2024.2.2 + # via + # -r requirements/base.txt + # requests +cffi==1.16.0 + # via + # -r requirements/base.txt + # cryptography +charset-normalizer==3.3.2 + # via + # -r requirements/base.txt + # requests coverage==6.5.0 # via # -c requirements/constraints.txt # -r requirements/test.in +cryptography==42.0.2 + # via + # -r requirements/base.txt + # social-auth-core ddt==1.6.0 # via # -c requirements/constraints.txt # -r requirements/test.in -dill==0.3.7 +defusedxml==0.8.0rc2 + # via + # -r requirements/base.txt + # python3-openid + # social-auth-core +dill==0.3.8 # via pylint # via # -c requirements/constraints.txt @@ -36,7 +57,7 @@ django-fake-model==0.1.4 # via # -c requirements/constraints.txt # -r requirements/test.in -django-mysql==4.7.1 +django-mysql==4.9.0 # via # -c requirements/constraints.txt # -r requirements/base.txt @@ -48,25 +69,35 @@ edx-opaque-keys[django]==2.3.0 # via # -c requirements/constraints.txt # -r requirements/base.txt -isort==5.12.0 + # edx-opaque-keys +idna==3.6 + # via + # -r requirements/base.txt + # requests +isort==5.13.2 # via pylint jsonfield==3.1.0 # via # -c requirements/constraints.txt # -r requirements/base.txt -lazy-object-proxy==1.9.0 +lazy-object-proxy==1.10.0 # via astroid mccabe==0.7.0 # via pylint -mock==4.0.3 +mock==5.0.2 # via # -c requirements/constraints.txt # -r requirements/test.in +oauthlib==3.2.2 + # via + # -r requirements/base.txt + # requests-oauthlib + # social-auth-core openedx-filters==1.2.0 # via # -c requirements/constraints.txt # -r requirements/base.txt -path==16.7.1 +path==16.10.0 # via path-py path-py==12.5.0 # via @@ -76,13 +107,21 @@ pbr==6.0.0 # via # -r requirements/base.txt # stevedore -platformdirs==4.0.0 +platformdirs==4.2.0 # via pylint pycodestyle==2.8.0 # via # -c requirements/constraints.txt # -r requirements/test.in -pylint==2.13.9 +pycparser==2.21 + # via + # -r requirements/base.txt + # cffi +pyjwt==2.8.0 + # via + # -r requirements/base.txt + # social-auth-core +pylint==2.17.7 # via # -c requirements/constraints.txt # -r requirements/test.in @@ -91,15 +130,30 @@ pymongo==3.13.0 # -c requirements/constraints.txt # -r requirements/base.txt # edx-opaque-keys -pytz==2023.3.post1 +python3-openid==3.2.0 + # via + # -r requirements/base.txt + # social-auth-core +pytz==2024.1 # via # -r requirements/base.txt # django # djangorestframework +requests==2.31.0 + # via + # -r requirements/base.txt + # requests-oauthlib + # social-auth-core +requests-oauthlib==1.3.1 + # via + # -r requirements/base.txt + # social-auth-core six==1.16.0 # via # -c requirements/constraints.txt # -r requirements/base.txt +social-auth-core==4.5.2 + # via -r requirements/base.txt sqlparse==0.4.4 # via # -r requirements/base.txt @@ -114,14 +168,17 @@ testfixtures==7.0.0 # -r requirements/test.in tomli==2.0.1 # via pylint -typing-extensions==4.8.0 +tomlkit==0.12.3 + # via pylint +typing-extensions==4.9.0 # via # -r requirements/base.txt # asgiref # astroid # pylint +urllib3==2.2.0 + # via + # -r requirements/base.txt + # requests wrapt==1.16.0 # via astroid - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/requirements/tox.txt b/requirements/tox.txt index 46856718..28261f31 100644 --- a/requirements/tox.txt +++ b/requirements/tox.txt @@ -10,7 +10,7 @@ chardet==5.2.0 # via tox colorama==0.4.6 # via tox -distlib==0.3.7 +distlib==0.3.8 # via virtualenv filelock==3.13.1 # via @@ -20,11 +20,11 @@ packaging==23.2 # via # pyproject-api # tox -platformdirs==3.11.0 +platformdirs==4.2.0 # via # tox # virtualenv -pluggy==1.3.0 +pluggy==1.4.0 # via tox pyproject-api==1.6.1 # via tox @@ -32,7 +32,7 @@ tomli==2.0.1 # via # pyproject-api # tox -tox==4.11.3 +tox==4.12.1 # via -r requirements/tox.in -virtualenv==20.24.6 +virtualenv==20.25.0 # via tox