Fix User Issue for reset password, and encode usernames (#14314)

This commit is contained in:
Mohit Yadav 2023-12-08 12:02:52 +05:30 committed by GitHub
parent 56385b281e
commit 2cfa562d63
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -34,6 +34,8 @@ import static org.openmetadata.service.util.EmailUtil.getSmtpSettings;
import at.favre.lib.crypto.bcrypt.BCrypt; import at.favre.lib.crypto.bcrypt.BCrypt;
import freemarker.template.TemplateException; import freemarker.template.TemplateException;
import java.io.IOException; import java.io.IOException;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.time.Instant; import java.time.Instant;
import java.util.HashMap; import java.util.HashMap;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
@ -188,7 +190,9 @@ public class BasicAuthenticator implements AuthenticatorHandler {
String passwordResetLink = String passwordResetLink =
String.format( String.format(
"%s/users/password/reset?user=%s&token=%s", "%s/users/password/reset?user=%s&token=%s",
getSmtpSettings().getOpenMetadataUrl(), user.getFullyQualifiedName(), mailVerificationToken); getSmtpSettings().getOpenMetadataUrl(),
URLEncoder.encode(user.getName(), StandardCharsets.UTF_8),
mailVerificationToken);
try { try {
EmailUtil.sendPasswordResetLink(passwordResetLink, user, subject, templateFilePath); EmailUtil.sendPasswordResetLink(passwordResetLink, user, subject, templateFilePath);
} catch (TemplateException e) { } catch (TemplateException e) {