mirror of
https://github.com/appwrite/appwrite
synced 2026-05-24 01:18:37 +00:00
Merge pull request #7280 from appwrite/fix-7190-user-identity-incorrect-user
Fix user identity attaching to wrong user
This commit is contained in:
commit
0fdc28e034
1 changed files with 10 additions and 2 deletions
|
|
@ -550,11 +550,19 @@ App::get('/v1/account/sessions/oauth2/:provider/redirect')
|
||||||
if (!$user->isEmpty()) {
|
if (!$user->isEmpty()) {
|
||||||
$userId = $user->getId();
|
$userId = $user->getId();
|
||||||
|
|
||||||
$identitiesWithMatchingEmail = $dbForProject->find('identities', [
|
$identityWithMatchingEmail = $dbForProject->findOne('identities', [
|
||||||
Query::equal('providerEmail', [$email]),
|
Query::equal('providerEmail', [$email]),
|
||||||
Query::notEqual('userId', $userId),
|
Query::notEqual('userId', $userId),
|
||||||
]);
|
]);
|
||||||
if (!empty($identitiesWithMatchingEmail)) {
|
if (!empty($identityWithMatchingEmail)) {
|
||||||
|
throw new Exception(Exception::USER_ALREADY_EXISTS);
|
||||||
|
}
|
||||||
|
|
||||||
|
$userWithMatchingEmail = $dbForProject->find('users', [
|
||||||
|
Query::equal('email', [$email]),
|
||||||
|
Query::notEqual('$id', $userId),
|
||||||
|
]);
|
||||||
|
if (!empty($userWithMatchingEmail)) {
|
||||||
throw new Exception(Exception::USER_ALREADY_EXISTS);
|
throw new Exception(Exception::USER_ALREADY_EXISTS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue