Используя ASP.NET Core, я создаю систему для приглашения пользователей присоединиться к группе, получить бесплатные кредиты, ...
При приглашении пользователя присоединиться к группе я создаю приглашение, которое сохраняется вбаза данных:
Токен сохраняется в базе данных вместе с другой информацией:
Invitation invitation = new Invitation {
InvitationType = "JoinGroup",
Completed = false,
Expiry = DateTime.Now.AddDays(4),
Token = some_token,
Parameters = new List<Parameter> {
new Parameter { Name = "GroupId", Value = 22 },
new Parameter { Name = "RoleId", Value = "Admin" },
new Parameter { Name = "Email", Value = "someuser@name.com" },
}
}
Затем я отправляю электронное письмо с URL:
/invite?token=some_token
Когдапользователь получает доступ к URL-адресу, по которому я получаю запись с данным токеном.
С этой информацией я делаю все, что мне нужно, например, добавление пользователя в группу.
Вопрос
Как мне создать уникальный токен?
Какую информацию я должен включить в токен?
И какя должен подтвердить это?