} return new LoginLinkDetails($url,
$expiresAt);
} public function consumeLoginLink(Request
$request): UserInterface
{ $userIdentifier =
$request->
get('user'
);
if (!
$hash =
$request->
get('hash'
)) { throw new InvalidLoginLinkException('Missing "hash" parameter.'
);
} if (!
$expires =
$request->
get('expires'
)) { throw new InvalidLoginLinkException('Missing "expires" parameter.'
);
} try { $this->signatureHasher->
acceptSignatureHash($userIdentifier,
$expires,
$hash);
$user =
$this->userProvider->
loadUserByIdentifier($userIdentifier);
$this->signatureHasher->
verifySignatureHash($user,
$expires,
$hash);
}