Это кажется намного более безопасным, чем вам когда-либо может понадобиться (не знаю точно, какие данные вы пытаетесь сохранить). Если вы хотите, вы можете сделать токен пригодным для использования только для одного сеанса или для любого количества сеансов, которое, по вашему мнению, будет достаточно для посетителя. Вы можете сделать так, чтобы, если они используют токен, который им дали в одном сеансе, но не заканчивают то, что им нужно сделать, им нужно заставить другого вернуться, если это разумно.
Однако то, что вы делаете, достаточно для безопасности. Единственный способ получить токен - это угадать, и эти токены очень сложно угадать. Не очень большая сделка, если только вы не слишком обеспокоены тем, что пираты получают информацию. Поскольку это URL-токен, он будет виден всем в электронном письме, которое вы отправляете, или как угодно. Вы, очевидно, должны сделать это видимым.
Единственный способ сделать его еще более безопасным - дать пользователю токен, который он может использовать для создания собственного надежного хешированного пароля. Тогда вы не храните пароль, и он становится более безопасным.