Шаблон проекта веб-приложения asp.net Членство

Я хотел бы использовать встроенную систему членства / аутентификации, которая по умолчанию включена в Visual Studio при создании нового веб-приложения asp.net.

У меня вопрос: у меня есть пользовательская таблица... UserID, FirstName, LastName и т. Д. С информацией о компании, которую я хочу использовать. Как мне связать эту таблицу с новой регистрацией, которую я создал?

Предположим, я создал новую регистрацию. Теперь, где хранятся данные логина и пароля?

Может кто-то указать мне верное направление?

4 ответа

Решение

Этот учебник может быть очень полезен в начале: создание схемы членства в SQL Server.

Если у вас есть в основном только информация профиля пользователя в существующей базе данных вашей компании, возможно, вам придется подумать о создании собственного поставщика профилей. Имейте в виду, что выполнение этого при использовании проекта веб-приложения имеет свои особенности.

Если у вас есть и другая информация в вашей базе данных, связанная с пользователем с помощью внешних ключей, возможно, вас заинтересует это обсуждение того, как использовать ее с членством.

Информация о членстве по умолчанию хранится в базе данных SQL ASPNETDB.MDF. Вы можете найти этот файл в вашей папке App_data.

Если вы хотите изменить способ членства, а также базу данных и таблицы, которые он использует, я бы порекомендовал создать пользовательский поставщик членства.

См. http://msdn.microsoft.com/en-us/library/aa479048.aspx или поставщика настраиваемого членства в google asp.net:

Если вы просто хотите, чтобы существующий поставщик членства использовал другую базу данных, вы можете запустить утилиту aspnet_regsql:

См. http://weblogs.asp.net/scottgu/archive/2005/08/25/423703.aspx

Этот пример пользовательского провайдера членства, который использует codefirst платформы сущностей, помог мне начать:

http://codefirstmembership.codeplex.com/

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

Эта статья может вам помочь: http://www.asp.net/security/tutorials/storing-additional-user-information-cs. Посмотри на это.

Дополнительные статьи:

http://www.4guysfromrolla.com/articles/101106-1.aspx

http://www.4guysfromrolla.com/articles/110310-1.aspx

Надеюсь это поможет.

Спасибо всем за ваши ответы, вы все дали мне некоторое понимание, чтобы помочь мне разобраться в моей проблеме. Я решил пойти по более простому маршруту.

Это то, что я придумал. В Register.aspx.cs:

protected void RegisterUser_CreatedUser(object sender, EventArgs e)
{

    TextBox txtFirstName = (TextBox)(RegisterUser.CreateUserStep.ContentTemplateContainer.FindControl("txtFirstName "));
    string firstName= txtFirstName.Text;

    ... Insert new fields  in database ....

}

И добавил элементы управления в элемент управления CreateUserWizard. Довольно простое решение.

Другие вопросы по тегам