Commit Graph

108 Commits

Author SHA1 Message Date
Nizar Mahmoud
4cb4be6afe feat: associates user by email for oauth when tpa is required
This change associates users signing in using oauth providers when tpa is required, verifying that only a single database user is associated with the email.

For more information as to why this was added in a separate pipeline, check edx-platform#25935.
2021-04-02 11:32:58 +05:00
Waheed Ahmed
f8de211e17 Fix redirection on SSO auth complete.
Since we are handling the MFE redirection in login_and_registration_form()
we don't need to handle it here. It's redirecting the enterprise users to
MFE instead of FE which is currently handled in login_and_registration_form()
view.

VAN-425
2021-03-25 22:16:34 +05:00
Awais Qureshi
8f4491e927 Pyupgrade in common/djangoapps/third-party-modes/ 2021-03-18 11:26:19 +05:00
Waheed Ahmed
817adc299f Add custom attribute for SSO auth_entry.
Added custom for SSO auth entries to monitor which auth entries are
still in use.
2021-03-12 23:29:28 +05:00
Waheed Ahmed
38187de0f9 Authn MFE: Toggle for microfrontend redirect.
VAN-308
2021-02-04 18:58:58 +05:00
Jawayria
7be5a683aa Applied pylint-amnesty to third_party_auth 2021-02-03 13:37:05 +05:00
Zaman Afzal
712a6bcc0c ENT-4034 Added more detail in exception (#26299) 2021-02-02 13:54:20 +05:00
Zaman Afzal
b99a64c385 ENT-3798 Multiple_SSO_Accounts_Association_to_SAML_User (#26170) 2021-02-01 11:44:12 +05:00
adeelehsan
55d2a4f897 Logistration MFE renamed to authn
VAN-300
2021-01-29 11:37:54 +05:00
Ahtisham Shahid
b2466c8c2b Error incase of disabled user social login
Updated status code and manage user func

update auth verification

Fixed auth condition

fixed test failuers

fixed style issues

fixed style issues

Created test for auth disabled use

Code refactor

Fixed form ain auth exchange

Fixed oauth apps with disabled user fail

applied quality fixes

Refactored tests

fixed quality issues

removed extra files

Fixed linter issues

Fixed linter issues
2021-01-06 20:37:01 +05:00
Zainab Amir
2cf023bf27 VAN-92: Update TPA Context with platform name (#25580) 2020-11-13 17:15:53 +05:00
Kyle McCormick
151bd13666 Use full names for common.djangoapps imports; warn when using old style (#25477)
* Generate common/djangoapps import shims for LMS
* Generate common/djangoapps import shims for Studio
* Stop appending project root to sys.path
* Stop appending common/djangoapps to sys.path
* Import from common.djangoapps.course_action_state instead of course_action_state
* Import from common.djangoapps.course_modes instead of course_modes
* Import from common.djangoapps.database_fixups instead of database_fixups
* Import from common.djangoapps.edxmako instead of edxmako
* Import from common.djangoapps.entitlements instead of entitlements
* Import from common.djangoapps.pipline_mako instead of pipeline_mako
* Import from common.djangoapps.static_replace instead of static_replace
* Import from common.djangoapps.student instead of student
* Import from common.djangoapps.terrain instead of terrain
* Import from common.djangoapps.third_party_auth instead of third_party_auth
* Import from common.djangoapps.track instead of track
* Import from common.djangoapps.util instead of util
* Import from common.djangoapps.xblock_django instead of xblock_django
* Add empty common/djangoapps/__init__.py to fix pytest collection
* Fix pylint formatting violations
* Exclude import_shims/ directory tree from linting
2020-11-10 07:02:01 -05:00
zia.fazal@arbisoft.com
647da21191 Apply same username restrictions during SSO pipeline
Apply same username restrictions during SSO pipeline as we have user registeration flow to avoid SSO flow breakage at the time of user creation.
ENT-2730

Code quality fixes
2020-05-07 19:50:56 +05:00
Aarif
6ee2089077 fixed warnings for wrong-import-order 2020-04-08 23:43:06 +05:00
zia.fazal@arbisoft.com
d7ed021b8d Added ability to logout from IDP
Logout link should be displayed only for learner portal

Added changed to display only for learner portal
Added unit tests

check third_party_auth is enabled

Changes to extend SSO logout link feature to Oauth providers

Fixed quality violations

Removed unncessary assert

Reviewer feedback changes
2020-02-07 19:38:36 +05:00
Feanil Patel
6e3fe00fff Fix all E303 pep8 errors. 2019-12-30 12:25:38 -05:00
Feanil Patel
9cf2f9f298 Run 2to3 -f future . -w
This will remove imports from __future__ that are no longer needed.

https://docs.python.org/3.5/library/2to3.html#2to3fixer-future
2019-12-30 10:35:30 -05:00
Zainab Amir
7eb21f4dec Change version of social-auth-app-django (#21956)
Microsoft social login is not working on edx mobile app. The issue
is fixed in newer version of social-auth-app-django.

PROD-718
2019-12-12 18:07:34 +05:00
Zaman Afzal
9b82185323 Revert "ENT-2454 Modify third party auth pipeline to update user enterprise (#22314)" (#22384)
This reverts commit 439e4b4169.
2019-11-22 20:46:36 +05:00
Zaman Afzal
439e4b4169 ENT-2454 Modify third party auth pipeline to update user enterprise (#22314)
* ENT-2454 Modify third party auth pipeline to update user enterprise
2019-11-22 17:47:12 +05:00
Christie Rice
1d5fcc60bb ENT-1604 Send signal when user is verified via SSO (#21946) 2019-10-15 08:18:54 -04:00
Feanil Patel
4eaf875741 BOM-621 Fix hashing in a bunch of places. 2019-09-19 15:53:39 -04:00
irfanuddinahmad
e723448a77 minor logs update 2019-07-29 16:22:42 +05:00
irfanuddinahmad
df1c7f553a reformatted logging 2019-07-25 16:10:48 +05:00
Ayub khan
33bcb76a26 INCR-400 python3 compatibility 2019-07-19 10:00:39 -04:00
irfanuddinahmad
53265d506e user existence check updated to use email only 2019-05-30 12:30:14 +05:00
Brittney Exline
550d2616b5 ENT-1500 Update third_party_auth pipeline to override get_username
We are doing this for two reasons:
1. We suspect that the get_username function in social_core is performing a case-sensitive
username check which is breaking when we try to create the user with a duplicate username.
This version ensures we perform a case insensitive check.

2. If it's not that, we want more logging information in order to debug the issue.
2019-03-19 17:01:29 -04:00
adeelehsan
73f57457c0 Disbale third party login
if user password is unusable
then disable third party login

LEARNER-6183
2019-02-15 16:03:11 +05:00
Matthew Piatetsky
9681ca36b8 fix unicode strings in common/ 2019-02-05 10:57:00 -05:00
Nimisha Asthagiri
c7c8e856cd Check and update login status with all login-related cookies 2018-12-17 13:03:32 -05:00
Gabe Mulley
5311509b19 Provide more context to calls to Segment.
Implementation for DE-1089.

Centralize the definition of context into a single method.  This is in
common/djangoapps/track because the context is originally set there by
middleware.
2018-11-15 20:56:10 -05:00
Nimisha Asthagiri
8cf44283c9 Consolidate user login and authentication code 2018-09-15 03:21:39 -04:00
Jeremy Bowman
713d64e1e2 TE-2702 Update Read the Docs links to HTTPS 2018-08-15 17:34:01 -04:00
Eric Fischer
247bb50ed2 s/django.core.urlresolvers/django.urls/g
Django 1.10 deprecation fix for Hackathon XIX
Addresses PLAT-1397
2018-06-05 13:59:09 -04:00
Eric Fischer
e18448e27d Silence deprecation warnings
https://docs.djangoproject.com/en/1.11/releases/1.10/#using-user-is-authenticated-and-user-is-anonymous-as-methods
2018-05-02 10:03:50 -04:00
Brittney Exline
f41bf2f409 ENT-944 Create SSOVerifications for users in tpa pipeline based on provider's settings 2018-04-23 10:10:26 -04:00
Bill DeRusha
d1ed33ac23 Update and refactor random password generator 2018-04-13 14:17:21 -04:00
zubair-arbi
7504be1c67 Remove username from force syncing in third party auth pipeline 2018-01-01 16:24:03 +05:00
Saleem Latif
86da9c1c63 Disable linking of personal accounts to enterprise customers via SSO 2017-12-18 15:12:42 +05:00
Uman Shahzad
53fea6a4b7 Merge pull request #16624 from open-craft/uman/force-sync-learner-data
[ENT-759] Add a TPA pipeline step to take forced sync into account.
2017-11-29 17:11:29 +05:00
Uman Shahzad
ee09c4ccf9 Add a TPA pipeline step to allow force sync of user details.
The feature is controlled by a switch on the provider.
Emails are sent if the email changes during the sync.
We skip syncing the username/email if there would be a conflict.
2017-11-29 16:16:55 +05:00
Sven Marnach
b77bff4d96 Small fixes to support Okta SSO. 2017-11-28 16:50:53 +01:00
Brittney Exline
ae8a5f2bf7 ENT-447 Add flag to third party auth SAML provider to send to the registration page first 2017-06-27 13:12:00 -04:00
Uman Shahzad
8b65ca17c5 Migrate to latest, split python-social-auth.
PSA was monolothic, now split, with new features, like
a DB-backed partial pipeline. FB OAuth2 version also upped.

Partial pipelines don't get cleared except when necessary.
They persist for special cases like change of browser while
still mid-pipeline (i.e. email validation step).

Refactor, cleanup, and update of a lot of small things as well.

PLEASE NOTE the new `social_auth_partial` table.
2017-06-20 22:05:36 +05:00
Andy Armstrong
93235d118d Reorder imports using isort (except lms and cms) 2017-05-30 16:04:54 -04:00
Jesse Shapiro
fc814aee95 Add data sharing consent features for EnterpriseCustomer 2016-12-12 09:30:38 -05:00
Ned Batchelder
2e1238b83e Remove unused imports 2016-04-08 11:23:05 -04:00
Braden MacDonald
a654d5e7ac Add additional data to custom SSO auth form extension points 2015-12-04 15:38:18 -08:00
Braden MacDonald
4645c6ecdd Allow using a custom login/register form with third_party_auth 2015-12-01 15:43:34 -08:00
Ned Batchelder
0872732cf0 Fix pylint C7630 (literal used as attribute) violations
There's no need to use a string literal in setattr, delattr, or the
two-argument form of getattr.
2015-11-23 15:32:54 -05:00