Насколько сложно / трудоемко настроить страницу входа в систему .net? - PullRequest
1 голос
/ 18 марта 2009

Мы работаем над решением SSO, которое позволяет пользователям входить в систему через .net, а затем подключаться к PHP-приложению. Я работаю над концом PHP, и после большой работы я расшифровал, проанализировал и сделал что-то еще с cookie, который .net устанавливает с именем пользователя и датой истечения срока действия билета.

По крайней мере, я думаю, что у меня есть. Моя проблема сейчас в том, что .net разработчик сейчас слишком занят, чтобы настроить тестовую страницу входа в систему, которая генерирует эти куки, чтобы я мог по-настоящему протестировать. Что меня интересует, так это то, сколько времени займет настройка этой тестовой страницы. У меня такое ощущение, что это не должно занять много времени, но тогда я никогда этого не делал. (Боже упаси, я как клиент, который говорит разработчику, что «это займет всего час или около того».)

Я просто хочу знать, чего мне следует ожидать. Простой вход в систему, который создает тикет Formauth и отправляет зарегистрированного пользователя на мою тестовую страницу. FWIW, у них уже есть любое количество страниц входа, настроенных для приложений .net, которые используются в настоящее время.

РЕДАКТИРОВАТЬ: Чтобы уточнить, я не буду реализовывать это. Я хочу знать, сколько времени понадобится разработчику .net, чтобы сделать это.

Ответы [ 5 ]

4 голосов
/ 18 марта 2009

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

3 голосов
/ 18 марта 2009

Если все после того, как вы создаете билет проверки подлинности с помощью форм, то эта строка кода сделает это:

FormsAuthentication.SetAuthCookie("Username", False)

Второй параметр указывает, хотите ли вы, чтобы cookie был постоянным или нет.

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

3 голосов
/ 18 марта 2009

Если вы использовали ASP.NET Membership Provider , он в значительной степени сделает всю работу за вас (включая саму форму входа).

2 голосов
/ 18 марта 2009

Если у вас нет базы данных для входа, вы можете использовать встроенный SQL-провайдер, вот как вы его настраиваете: http://msdn.microsoft.com/en-us/library/6e9y4s5t.aspx.

Если у вас есть данные, вы можете реализовать настраиваемый поставщик членства и реализовать только метод ValidateUser. Вы можете оставить остальные с NotImplementedException и реализовать больше функций, когда они вам нужны:

public override bool ValidateUser(string username, string password)
{
   //return true or false;
}

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

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

Обновление 1: Предоставить такую ​​оценку времени очень сложно. Время сильно варьируется в зависимости от проекта, разработчика и т. Д. Тем не менее, если идти по пути членства, разумно, чтобы оно заняло всего пару часов, конечно, тестирование действительно работает (если идти по маршруту нестандартного провайдера, это предполагает db на месте, и у вас есть кое-что, чтобы упростить вход в систему). Если вы настраиваете его только для того, чтобы проверить, как он интегрируется с PHP, я бы пошел встроенным провайдером, просто запустите сценарии sql для создания БД, настройте конфигурацию, добавьте страницу входа / элемент управления, протестируйте его и вы хорошо идти, скажем час в этом случае. Теперь это своего рода автоматический режим, подход «просто сделай».

1 голос
/ 18 марта 2009

Аутентификация на основе форм ASP.NET довольно легко начать, и вы можете найти учебник на веб-сайте QuickStart Tutorials . Вы хотите взглянуть на раздел Аутентификация на основе форм . Если вам требуется более сложное решение, взгляните на Членство и роль менеджера .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...