Я должен вооружать систему login, и что вышеупомянутая система, которая могла бы повторно использоваться в двух проектах mvc
Модель (согласно архитектуре) осталась следующего способа:
Пользователь: usu, пароль, emailConfirmado, и т.д.
Клиент: usuarioId, электронная почта, и т.д.
Служащий: usuarioId, электронная почта, и т.д.
В свою очередь, у модели есть другие подмостки для безопасности:
Usuario_Permiso: usuarioId, permisoId
Разрешение: permisoId, desc
Rol_Permiso: rolId, permisoId
Список: rolId, desc
Usuario_Rol: usuarioId, rolId
Мой вопрос: он рекомендуемый увеличивать asp.net mvc5 identity
или предпочтительно использовать мою собственную систему login?
Привет
По моему мнению он сказал бы тебе категорически, использовать ASP.NET Identity будет ли приносить тебе много преимуществ, despreocupándote криптографических заданий и уберегаясь работа. Кроме того, ASP.NET Identity приготовлен для того, чтобы быть увеличенным, потому что, простую форму возможно изменять с типа идентификаторов до того, чтобы использовать твои собственные организации usuarios
, roles
, ...
Я думаю, что в твой одинокий случай ты нуждаешься в том, чтобы поместить ее совместно, добавить систему разрешения и соединить организации usuarios
с теми clientes
и empleados
Простой способ это делать был бы создавая проект Biblioteca de clases
и двигать элементы ASP.NET Identity, которые включаются, по умолчанию, в проект MVC (ApplicationUser
, ApplicationDbContext
, ApplicationUserManager
, ...).
После, ты добавил бы необходимые элементы, чтобы управлять о разрешении (организации, чтобы определять разрешения, услугу, чтобы управлять о разрешении...)
По моему мнению, ассоциации между usuarios
и clientes
и empleados
он не включил бы ее в общий проект, потому что я схватил, мог бы служить тебе для большего количества проектов, в которых у тебя не было бы этих организаций.
И в конце концов, если ты упаковываешь этот проект в пакете NuGet, ты смог бы, простой формы, добавлять удостоверение и разрешение ко всем твоим проектам.
В этой статье CodeProject "ASP.NET Identity with webforms" ты можешь видеть flesibilidad ASP.NET Identity, который даже возможно "щелкать" в проекте WebForms
Identity использует Entity Framework
, чтобы осуществлять настойчивость организаций, которые он определяет, что позволяет нам применять наследство во время увеличивания Вашей функциональности.
Extending ASP.net Identity in an ASP.net MVC 5 application
может быть начатым, хотя чем-то простым, например, Класс добавляет свойство к пользователю
public class ApplicationUser : IdentityUser
{
public string Email { get; set; }
}
, получает в наследство от IdentityUser
, которая определяет структуру таблицы AspNetUser
ASP.NET, MVC 5: Extending ASP.NET Identity 2.0 Списка and Implementation of Роле Басед Authorization
Pero также ты можешь увеличивать остальные объекты, определенные в модели Identity, как то, чтобы быть списком, aГ±adiendo новое свойство.
public class ApplicationRole : IdentityRole
{
public virtual string Description { get; set; }
}
, Поскольку ты будешь понимать только, - вопрос применения наследства, но из-за того, что относится друг к другу о EF, может также ты можешь определять контекст, чтобы настраивать, как mapear эти новые свойства в поля db
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("DefaultConnection")
{
}
}
Другое преимущество, которое ты получаешь, использовав EF
, состоит в том, что ты можешь применять migrations
, чтобы обновлять структуру данных, которых ты определил.