[Django] #34379: Invalid regex pattern for password reset token in 4.2b1

6 views
Skip to first unread message

Django

unread,
Mar 2, 2023, 6:03:52 AM3/2/23
to django-...@googlegroups.com
#34379: Invalid regex pattern for password reset token in 4.2b1
-------------------------------------+-------------------------------------
Reporter: Dmitriy | Owner: nobody
Sintsov |
Type: Bug | Status: new
Component: | Version: 4.2
contrib.auth | Keywords: password reset
Severity: Normal | token auth admin
Triage Stage: | Has patch: 0
Unreviewed |
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 1
UI/UX: 0 |
-------------------------------------+-------------------------------------
Probably the second part of token (32 chars) is too long for {1,20} regex:

NoReverseMatch at /password-reset/
Reverse for 'password_reset_confirm' with keyword arguments '{'uidb64':
'MQ', 'token': 'bkfl1u-973ffa0db26e9754b6591f45ce331fd6'}' not found. 1
pattern(s) tried: ['reset/(?P<uidb64>[0-9A-Za-z_\\-]+)/(?P<token>[0-9A-
Za-z]{1,13}-[0-9A-Za-z]{1,20})/$']
Request Method: POST
Request URL: http://127.0.0.1:8000/password-reset/
Django Version: 4.2b1
Exception Type: NoReverseMatch
Exception Value:
Reverse for 'password_reset_confirm' with keyword arguments '{'uidb64':
'MQ', 'token': 'bkfl1u-973ffa0db26e9754b6591f45ce331fd6'}' not found. 1
pattern(s) tried: ['reset/(?P<uidb64>[0-9A-Za-z_\\-]+)/(?P<token>[0-9A-
Za-z]{1,13}-[0-9A-Za-z]{1,20})/$']
Exception Location: /home/user/work/ispdevenv/lib/python3.10/site-
packages/django/urls/resolvers.py, line 828, in _reverse_with_prefix

Error during template rendering
In template /home/user/work/ispdevenv/lib/python3.10/site-
packages/django/contrib/admin/templates/registration/password_reset_email.html,
error at line 6

Reverse for 'password_reset_confirm' with keyword arguments '{'uidb64':
'MQ', 'token': 'bkfl1u-973ffa0db26e9754b6591f45ce331fd6'}' not found. 1
pattern(s) tried: ['reset/(?P<uidb64>[0-9A-Za-z_\\-]+)/(?P<token>[0-9A-
Za-z]{1,13}-[0-9A-Za-z]{1,20})/$']
1 {% load i18n %}{% autoescape off %}
2 {% blocktranslate %}You're receiving this email because you
requested a password reset for your user account at {{ site_name }}.{%
endblocktranslate %}
3
4 {% translate "Please go to the following page and choose a new
password:" %}
5 {% block reset_link %}
6 {{ protocol }}://{{ domain }}{% url 'password_reset_confirm'
uidb64=uid token=token %}
7 {% endblock %}
8 {% translate 'Your username, in case you’ve forgotten:' %} {{
user.get_username }}
9
10 {% translate "Thanks for using our site!" %}
11
12 {% blocktranslate %}The {{ site_name }} team{% endblocktranslate
%}
13
14 {% endautoescape %}
15

--
Ticket URL: <https://code.djangoproject.com/ticket/34379>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Mar 2, 2023, 6:05:06 AM3/2/23
to django-...@googlegroups.com
#34379: Invalid regex pattern for password reset token in 4.2b1
-------------------------------------+-------------------------------------
Reporter: Dmitriy Sintsov | Owner: nobody
Type: Bug | Status: new
Component: contrib.auth | Version: 4.2
Severity: Normal | Resolution:
Keywords: password reset | Triage Stage:
token auth admin | Unreviewed
Has patch: 0 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 0
-------------------------------------+-------------------------------------
Description changed by Dmitriy Sintsov:

Old description:

New description:

--

--
Ticket URL: <https://code.djangoproject.com/ticket/34379#comment:1>

Django

unread,
Mar 2, 2023, 6:43:42 AM3/2/23
to django-...@googlegroups.com
#34379: Invalid regex pattern for password reset token in 4.2b1
-------------------------------------+-------------------------------------
Reporter: Dmitriy Sintsov | Owner: nobody
Type: Bug | Status: closed
Component: contrib.auth | Version: 4.2
Severity: Normal | Resolution: invalid

Keywords: password reset | Triage Stage:
token auth admin | Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):

* status: new => closed
* resolution: => invalid


Comment:

Thanks for this report, however I don't see such regex anywhere in Django.
This seems to be an issue in your code.

--
Ticket URL: <https://code.djangoproject.com/ticket/34379#comment:2>

Reply all
Reply to author
Forward
0 new messages