Fix scim user updates setting isEmailVerified back to false when the email has not changed

This commit is contained in:
Carlos Monastyrski
2025-07-29 16:58:06 -03:00
parent 992df5c7d0
commit 40de8331a3
+4 -2
View File
@@ -579,6 +579,9 @@ export const scimServiceFactory = ({
}); });
const serverCfg = await getServerCfg(); const serverCfg = await getServerCfg();
const hasEmailChanged = email?.toLowerCase() !== membership.email;
const defaultEmailVerified =
org.orgAuthMethod === OrgAuthMethod.OIDC ? serverCfg.trustOidcEmails : serverCfg.trustSamlEmails;
await userDAL.transaction(async (tx) => { await userDAL.transaction(async (tx) => {
await userAliasDAL.update( await userAliasDAL.update(
{ {
@@ -605,8 +608,7 @@ export const scimServiceFactory = ({
firstName, firstName,
email: email?.toLowerCase(), email: email?.toLowerCase(),
lastName, lastName,
isEmailVerified: isEmailVerified: hasEmailChanged ? defaultEmailVerified : undefined
org.orgAuthMethod === OrgAuthMethod.OIDC ? serverCfg.trustOidcEmails : serverCfg.trustSamlEmails
}, },
tx tx
); );