Commit Graph

213 Commits

Author SHA1 Message Date
Jeff Chaves
e1bd970b46 ENT-2894: Use new welcome template when redirected from enterprise proxy login view (#24587)
* using new welcome template when redirected from enterprise proxy login view

* enabling safe redirects to enterprise learner portal from login in devstack

* ading admin portal to login redirect whitelist

* running make upgrade to version bump edx-enterprise
2020-07-24 17:40:42 -04:00
Talia
6d365ca1da fixes for front end saml work and to align with data requirements. 2020-07-24 14:45:34 -04:00
Robert Raposa
77e490f057 ARCHBOM-1305: remove deprecated flag_undefined_default (#24426)
This is the final step in removing the deprecated
flag_undefined_default as explained by the following ADR:
https://github.com/edx/edx-platform/blob/master/openedx/core/djangoapps/waffle_utils/docs/decisions/0001-refactor-waffle-flag-default.rst

Notes:

* All uses of flag_undefined_default=False were always
  supposed to have been no-ops.
* All uses of flag_undefined_default=True that are removed
  in this PR have been replaced by migrations in past PRs.
* The temporary metric temp_flag_default_used id no longer
  reporting any data.

ARCHBOM-1305
2020-07-09 09:31:31 -04:00
Feanil Patel
f2ac18049b Validate before accessing email parts.
For somereason earlier validation is not ensuring that we have a valid e-email.
In this case, break out of the flow since we don't have a domain that's in our
list and log the user's id so that we can learn more about when this happens.

By a reading of the code flow, it doesn't seem like it should be possible except
with a handful of users that have invalid e-mail addresses in the database but it
seems to be happening pretty regularly.
2020-07-08 13:35:55 -04:00
Waheed Ahmed
4f80fd6540 Improve password reset rate limit.
Used django-ratelimit instead of django-ratelimit-backend
to configure two different rate limit configurations for same
endpoint.

PROD-1708
2020-07-08 16:19:07 +05:00
Waheed Ahmed
a6a69224d1 Ratelimit login_user endpoint.
Ratelimited `login_user` endpoint using `django-ratelimit`, also
decreased default value of logistration rate limit to 100 requests
per five minutes per IP.

PROD-1877
2020-07-08 15:36:11 +05:00
Ahtisham Shahid
5707bbdc90 updated confirm_email field type (#24205)
* updated confirm_email field type and removed confirm email form v1
2020-06-22 17:10:41 +05:00
Ahtisham Shahid
340e00988f Removed confirm email after SSO 2020-06-16 14:06:52 +05:00
adeel khan
76419f9d01 Merge pull request #23913 from edx/adeel/prod_1505_improve_security_lockouts_logic
Improving user locked out logic.
2020-06-10 14:21:16 +05:00
Waheed Ahmed
6b268c37b4 Rate limit logistration endpoints.
PROD-1506
2020-06-10 13:33:26 +05:00
Adeel Khan
2383fb3fa6 Improving user locked out logic.
This patch improves on the user locked
out logic by providing a helping message
near locked out. This would help reduce
retries by giving user the option to use
password reset flow to fix the issue.

PROD-1505
2020-06-09 09:36:42 +05:00
Ahtisham Shahid
b69163fae7 Merge pull request #24079 from edx/ahtisham/PROD-1412-2
Added v2 for confirm email backward compatibility
2020-06-03 17:13:49 +05:00
Ahtisham Shahid
af033d25cc Added v2 for confrim email backward compatiblity
updated tests

fixed style issue

Fixed tests for v2 api
2020-06-02 13:01:58 +05:00
hasnain.naveed
c51dc9db20 ENT-2818 | Added enterprise slug login's url on edx login page. 2020-05-28 19:58:46 +05:00
Feanil Patel
c06f7b2fd7 Revert "Rate limit logistration endpoints."
This reverts commit 74bc970edc.
2020-05-21 11:41:09 -04:00
Feanil Patel
72ea1b7d4f Revert "Increase requests limit for logistration rate limit."
This reverts commit a1c018823d.
2020-05-21 11:40:47 -04:00
Waheed Ahmed
a1c018823d Increase requests limit for logistration rate limit. 2020-05-21 17:05:19 +05:00
Waheed Ahmed
74bc970edc Rate limit logistration endpoints.
PROD-1506
2020-05-21 13:45:48 +05:00
Ned Batchelder
cca33732ba Correct markup mistakes in api docs 2020-05-12 13:36:14 -04:00
mariajgrimaldi
8063adf5eb changed cookie_date for http_date (#23929)
I wanted to make a byte-sized contribution but there were no Jira tickets so we decided, thanks to a conversation with @jmbowman through the Open Edx Community #incr (Slack) channel, to collaborate in the elimination of warnings listed in the Warnings Report at https://build.testeng.edx.org/job/edx-platform-python-pipeline-master/warning_5freport_5fall_2ehtml/

This PR contributes to the elimination of RemovedInDjango30Warnings, specifically the one mentioned above and reported in the Warnings Report

Changed cookie_date to http_date in the following file:

    openedx/core/djangoapps/user_authn/cookies.py

This warning occurs due to deprecation since Django 2.1: https://docs.djangoproject.com/en/2.2/ref/utils/#django.utils.http.cookie_date
2020-05-08 15:55:23 -04:00
Ali Akbar
0955865fa9 Merge pull request #23885 from edx/aakbar/PROD-1478
Unauthenticated Contact Us improvements
2020-05-08 19:49:06 +05:00
Ali-D-Akbar
94907cc4a9 Unauthenticated Contact Us improvements
fix password reset page, add another test and remove typo

improve js test

add quality changes

add quality changes
2020-05-08 14:14:35 +05:00
Waheed Ahmed
c603111895 added another test case. 2020-05-07 15:14:31 +05:00
Waheed Ahmed
05d18effde Implement both IP and email based rate limiting. 2020-05-07 15:14:31 +05:00
Waheed Ahmed
f3db71171e Fix password reset rate limiting for existing users.
PROD-1427
2020-05-07 15:14:31 +05:00
Gabe Mulley
8dd633b6e5 Merge pull request #23856 from edx/mulby/log-reg-failures
log registration failures
2020-05-05 08:50:07 -04:00
Gabe Mulley
9f287165bd log registration failures 2020-05-04 16:20:12 -04:00
Waheed Ahmed
07465b2b35 Ratelimit password reset by email instead of IP.
Also changed `password_reset` endpoint rate limit configuration to
1/minute from 30/5 minutes.

PROD-1427
2020-04-30 14:50:47 +05:00
Ahtisham Shahid
8af94ec72a Disabled copy/paste in confirm email
Created sorting for email field

updated tests

Fixed sorting issue in registration form

Fixed sorting issue in registration form

Fixed sorting issue in registration form

Added missing items in env and updated order logic

Added missing items in env and updated order logic
2020-04-28 11:51:01 +05:00
George Babey
5d62456250 Merge pull request #23671 from open-craft/jill/samesite-cookies
SE-2320 Adds django-cookies-sameseite middleware
2020-04-20 13:15:26 -04:00
Manjinder Singh
b7633d0b94 [CR-2057]: Remove email placeholder (#23739)
* Remove email placeholder

The current placeholder is confusing to users and results in many trying
to login with their username. The change in this PR hopefully decreases that
confusion.

According to UX recommendations, we have decided to remove the email placeholder for the form. It seems placeholders tend to just confuse the users.
2020-04-17 13:50:21 -04:00
Zachary Trabookis
7b3525278e Fix SameSite cookie issue for LTI Provider. EW-449
There was an issue where external LMS system (e.g. Canvas, Blackboard) that used Open edX LTI Provider calls had cookies blocked. This update fixes this issue by defining third-party cookies to have attributes of `Secure=True` and `SameSite=None`.

Details here: https://discuss.openedx.org/t/lti-xblock-and-samesite/759/5

(cherry picked from commit 28479a2966b87b16a25dbc96c19b6f5817d255de)
2020-04-13 17:14:15 +09:30
M Zulqarnain
39dcc8b180 BOM-1514 : Remove waffle switch PREVENT_AUTH_USER_WRITES (#23686)
* Remove waffle switch PREVENT_AUTH_USER_WRITES
2020-04-10 18:21:12 +05:00
Aarif
6ee2089077 fixed warnings for wrong-import-order 2020-04-08 23:43:06 +05:00
zia.fazal@arbisoft.com
f56235248a Improved enterprise target regex
Improved enterprise target regex to include missing
/enterprise/handle_consent_enrollment/{uuid}/course/ endpoint.
ENT-2710
2020-04-06 12:27:44 +05:00
Waheed Ahmed
69181864cc Fix NoneType object has no attribute backend
We were passing unstripped password value to `authenticate_new_user()`
after creating a user which was resulting in password mismatch and
was raising this error.

PROD-656
2020-04-03 21:17:00 +05:00
Nimisha Asthagiri
27433ecac0 Django2 LoginTest: fix to accommodate expired cookie date format 2020-04-01 18:25:41 -04:00
Tim McCormack
5edc8fd380 Remove test for PREVENT_AUTH_USER_WRITES since code breaks in Django 2 (#23536)
...and it turns out we don't need the switch anymore, anyway.

When we upgraded to Django 1.11, this flag was added in order to
allow for a database migration that would render the user table
unwriteable for up to half an hour:
https://github.com/edx/edx-platform/pull/17561

This involved swapping out the signal handler for logins via
`user_logged_in.disconnect(django_update_last_login)`, but with
Django 2.0, that disconnect is silently failing (returning
false). Likely the disconnect is now happening too soon.
(See edx-platform/common/djangoapps/student/apps.py line 21 in 61e1eda.)

The result is that by the time the waffle switch is consulted, the
normal handler has already run, and the user's last login date has
already been updated.

For now we're just removing the test, and have filed ARCHBOM-1084 for
followup (deleting the switch and related code).
2020-03-30 20:28:18 +00:00
Zaman Afzal
5bff142622 Remove post_reset_login flag from the class based views. (#23452) 2020-03-25 18:49:29 +05:00
David Ormsbee
e9dbed948b Merge pull request #21365 from open-craft/agrendalath/one-letter-extra-fields
Allow one letter extra fields
2020-03-16 14:29:10 -04:00
Feanil Patel
5ec487452d Merge pull request #23188 from edx/robrap/BOM-1324-add-constraint
BOM-1324: remove oauth2.enforce_jwt_scopes toggle
2020-03-02 09:55:35 -05:00
Manjinder Singh
d08cd9ce04 Removing provider imports from edx-platform (#23229)
* Removing from provider imports from openedx

 * removed all uses of retire_dop_oauth2_models

* Removing provider library from lms, common, and cms

Created/copied function short_token(from django-oauth-provider) and create_hash256 to help with conversion
2020-03-02 08:56:54 -05:00
Robert Raposa
a4716c75cb fix tests 2020-02-27 08:58:45 -05:00
Robert Raposa
84686e81c3 BOM-1324: remove oauth2.enforce_jwt_scopes toggle
The oauth2.enforce_jwt_scopes waffle switch was added temporarily for
the rollout of jwt scopes. This removes the toggle and replacing code
with the equivalent of `oauth2.enforce_jwt_scopes` as True.
2020-02-27 08:58:45 -05:00
Diana Huang
d5ae5c3a8e Remove wrapper code from logout flow. 2020-02-25 13:06:42 -05:00
Diana Huang
0b9f7298c6 Replace DOP library factories with the DOT equivalent.
https://openedx.atlassian.net/browse/BOM-1312
2020-02-24 16:33:56 -05:00
Kyle McCormick
bac070e8af fixup! fixup! Handle next and course_id in /login_ajax
nvm, just skip_unless_lms
2020-02-13 12:24:51 -05:00
Kyle McCormick
0875ede96f fixup! Handle next and course_id in /login_ajax
fix test_login_success_with_redirect in studio
2020-02-13 12:24:51 -05:00
Kyle McCormick
234eedd8c6 Handle next and course_id in /login_ajax
Currently, the /login_ajax endpoint does not regard
any `next` or `course_id` parameters. This commit changes
that, sharing the logic that /login (which the current
templated login page uses) employs to cacluate
a redirect-after-login URL based on `next` and `course_id`.

The new functionality is behind ENABLE_LOGIN_MICROFRONTEND.
2020-02-13 12:24:51 -05:00
Hasnain Naveed
535869ff15 Merge pull request #22790 from edx/hasnain-naveed/ENT-2511
ENT-2511 | Disabled the admin panel's login page.
2020-02-10 18:23:53 +05:00