Skip to content

fix: urlencode email in reset password link #15167

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Oct 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
UPDATE notification_templates
SET
title_template = E'Reset your password for Coder',
body_template = E'Hi {{.UserName}},\n\nUse the link below to reset your password.\n\nIf you did not make this request, you can ignore this message.',
actions = '[{
"label": "Reset password",
"url": "{{base_url}}/reset-password/change?otp={{.Labels.one_time_passcode}}&email={{.UserEmail | urlquery}}"
}]'::jsonb
WHERE
id = '62f86a30-2330-4b61-a26d-311ff3b608cf'
2 changes: 1 addition & 1 deletion coderd/notifications/notifications_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -994,7 +994,7 @@ func TestNotificationTemplates_Golden(t *testing.T) {
id: notifications.TemplateUserRequestedOneTimePasscode,
payload: types.MessagePayload{
UserName: "Bobby",
UserEmail: "bobby@coder.com",
UserEmail: "bobby/drop-table+user@coder.com",
UserUsername: "bobby",
Labels: map[string]string{
"one_time_passcode": "fad9020b-6562-4cdb-87f1-0486f1bea415",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
From: system@coder.com
To: bobby@coder.com
To: bobby/drop-table+user@coder.com
Subject: Reset your password for Coder
Message-Id: 02ee4935-73be-4fa1-a290-ff9999026b13@blush-whale-48
Date: Fri, 11 Oct 2024 09:03:06 +0000
Expand All @@ -18,7 +18,7 @@ If you did not make this request, you can ignore this message.


Reset password: http://test.com/reset-password/change?otp=3Dfad9020b-6562-4=
cdb-87f1-0486f1bea415&email=3Dbobby@coder.com
cdb-87f1-0486f1bea415&email=3Dbobby%2Fdrop-table%2Buser%40coder.com

--bbe61b741255b6098bb6b3c1f41b885773df633cb18d2a3002b68e4bc9c4
Content-Transfer-Encoding: quoted-printable
Expand Down Expand Up @@ -57,9 +57,10 @@ argin: 8px 0 32px; line-height: 1.5;">
<div style=3D"text-align: center; margin-top: 32px;">
=20
<a href=3D"http://test.com/reset-password/change?otp=3Dfad9020b-656=
2-4cdb-87f1-0486f1bea415&email=3Dbobby@coder.com" style=3D"display: inline-=
block; padding: 13px 24px; background-color: #020617; color: #f8fafc; text-=
decoration: none; border-radius: 8px; margin: 0 4px;">
2-4cdb-87f1-0486f1bea415&email=3Dbobby%2Fdrop-table%2Buser%40coder.com" sty=
le=3D"display: inline-block; padding: 13px 24px; background-color: #020617;=
color: #f8fafc; text-decoration: none; border-radius: 8px; margin: 0 4px;"=
>
Reset password
</a>
=20
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@
"notification_name": "One-Time Passcode",
"notification_template_id": "00000000-0000-0000-0000-000000000000",
"user_id": "00000000-0000-0000-0000-000000000000",
"user_email": "bobby@coder.com",
"user_email": "bobby/drop-table+user@coder.com",
"user_name": "Bobby",
"user_username": "bobby",
"actions": [
{
"label": "Reset password",
"url": "http://test.com/reset-password/change?otp=00000000-0000-0000-0000-000000000000\u0026email=bobby@coder.com"
"url": "http://test.com/reset-password/change?otp=00000000-0000-0000-0000-000000000000\u0026email=bobby%2Fdrop-table%2Buser%40coder.com"
}
],
"labels": {
Expand Down
Loading