При разработке пользовательской таблицы должны быть поля с точки зрения безопасности / аутентификации пользователя для веб-приложения (.NET и SqlServer 2005)
Я пришел со следующими полями:
userID
username -- preferably email
passwordHash
onceUsePassword -- to indicate that the password should be changed after login
alternativeContactEmail
userStatusID -- FK to a lookup table with statuses like: active, diabled etc
dateCreated
dateUpdated
lastPasswordUpdate
lastLogon
-- and then the rest like :forename, surname etc which are not of the interest in this question
Я что-то упустил?
Достаточно ли стандартного идентификатора (INT) для идентификатора пользователя или вместо него следует использовать GUID (идентификатор пользователя нигде не раскрывается)?
РЕДАКТИРОВАТЬ:
- Я ограничен использованием .NET 1.1
(не спрашивай ...)
- Информация о соли будет объединена с паролемHash
- учетная запись будет разблокирована путем отправки временного одноразового пароля, сгенерированного системой, на адрес электронной почты пользователя (следовательно, поле OnceUsePassword)