Как сгенерировать UUID на основе метки времени, чтобы проверить его истечение

#php #cakephp #uuid

#php #cakephp #uuid

Вопрос:

Мне нужно сгенерировать UUID на основе метки времени, чтобы иметь возможность проверить, действителен ли он по-прежнему или нет. Как я должен управлять датой истечения срока действия? Я использую CakePHP 2.9, и есть утилита для генерации UUID, используя CakeText::uuid() .

Комментарии:

1. Зачем вам нужно, чтобы uuid был основан на метке времени? Пусть uuid просто будет уникальным идентификатором и вместо этого будет иметь отдельное значение для даты истечения срока действия.

2. @MagnusEriksson это верно, я полагаю, что каким-то образом включить дату истечения срока действия в uuid, это хорошая идея? или разделить их будет лучше?

3. Это на самом деле не отвечает, зачем вам это нужно. Не зная причин, стоящих за этим, трудно сказать, хорошая это идея или плохая. Но если вам это действительно нужно, вы можете просто сгенерировать новый uuid и добавить к нему метку времени. Что-то вроде: $uuid = CakeText::uuid() . '-' . time(); .

4. @MagnusEriksson Мне нужно применить автоматический вход в систему, пользователь может нажать на веб-сайт, который перенесет его в другой домен, он должен иметь возможность автоматически входить в систему без повторной вставки учетных данных, отправив этот UUID в качестве параметра url, а затем повторно отправить его в Api для входа в систему

5. Тогда срок действия должен быть только в базе данных, а не в UUID. Помните, что если он находится в UUID, который вы получаете от клиента, они могут подделать его