ИНФОРМАЦИЯ: Обеспечения безопасности проверки подлинности форм с помощью Secure Sockets Layer (SSL)

Переводы статьи Переводы статьи
Код статьи: 813829 - Vizualiza?i produsele pentru care se aplic? acest articol.
В данной статье относится к следующие корпорации Майкрософт.Библиотека классов NET Framework пространства имен:
  • System.Web.Security
Развернуть все | Свернуть все

В этой статье

Аннотация

По умолчанию, файл cookie, содержащий форм При использовании проверки подлинности форм в билет проверки подлинности не защищен Microsoft ASP.NET веб-приложения. В данной статье описывается, как для защиты Проверка подлинности форм с помощью Secure Sockets Layer (SSL). Также статью Описание параметров реализации дополнительные и альтернативные способы защиты Проверка подлинности форм.

Дополнительная информация

Проверка подлинности на основе форм — это веб-приложения ASP.NET проверки подлинности Служба, позволяющая приложениям предоставлять свои собственные интерфейс входа в систему и до выполнение проверки пользовательских учетных данных. С помощью форм, ASP.NET выполняет проверку подлинности пользователей и затем перенаправляет пользователей без проверки подлинности для входа в систему страницы, указанный в параметре loginUrl атрибут <forms></forms> элемент в файле Web.config. Если вы предоставите учетные данные в форме входа в систему, приложение подтверждает подлинность запроса, а затем проблем с системой FormsAuthenticationTicket класс в виде файла cookie. В FormsAuthenticationTicket класс передается как файл cookie в ответ на последующие Web запросов от прошедших проверку подлинности клиента.

Хотя проверка подлинности форм предоставляет гибкие средства проверки подлинности, необходимо тщательно изучить некоторые важные вопросы обеспечения безопасности веб-приложения ASP.NET приложения. Вы должны помочь Защита учетных данных первоначального входа в систему с помощью протокола SSL, так как учетные данные отправляются на сервер открытым текстом. Также необходимо обеспечить защиту файл cookie, содержащего билет проверки подлинности форм. Для этого используйте протокол SSL на всех страницах для защиты билета. Кроме того, можно зашифровать подлинности форм, установив снять защиту атрибут <forms></forms> элемент для Все или Шифрование в файле Web.config и использование Шифрование метод FormsAuthentication класс для шифрования билета. Для получения дополнительных сведений о Шифрование метод FormsAuthentication см ""в разделе данной статьи.

Преимущества проверки подлинности форм

  • Проверка подлинности форм поддерживает проверку подлинности по хранилище пользовательских данных, таких как базы данных Microsoft SQL Server или службы каталогов Active Directory службы каталогов. Для получения дополнительных сведений см.»ССЫЛКИ"в разделе данной статьи.
  • Проверка подлинности форм поддерживает авторизацию на основе ролей с помощью Поиск роль из хранилища данных.
  • Проверка подлинности форм плавно интегрирована с веб-узла пользовательский интерфейс. Для получения дополнительных сведений см.»ССЫЛКИ"в разделе данной статьи.
  • ASP.NET предоставляет значительную часть инфраструктуры. Относительно в сравнении с версиями Microsoft Active Server Pages необходим небольшой код 3.0 и более ранних версий...
  • ASP.NET на основе форм не требует корпорации Майкрософт Обозреватель Internet Explorer. Проверка подлинности форм поддерживает широкий диапазон веб-обозревателя Клиенты.

Способы проверки подлинности в формах обеспечить безопасность

  • Использование SSL для всех страниц.
  • Использование Шифрование метод FormsAuthentication класс.

Использование SSL для всех страниц

Обеспечить, чтобы остается безопасной, файл cookie проверки подлинности по всему клиентского сеанса обозревателя с помощью SSL-шифрования для обеспечения безопасности безопасный доступ ко всем страницам. С помощью шифрования SSL на приложения, которые предотвратить любой пользователь, от проникновения файл cookie проверки подлинности и Передача другие полезные сведения.

Установить значение requireSSL Свойство ИСТИНА в файле Web.config. Когда файл «cookie» переключает SSL на месте отправить обратно в обозреватель. Если значение не задано requireSSL Кому ИСТИНА, создается исключение или не проходят проверку подлинности с помощью формы файл «cookie».

Когда requireSSL имеет значение ИСТИНА, зашифрованные соединения для защиты учетных данных пользователь и ASP.NET наборы HttpCookie.Secure свойство для файла cookie проверки подлинности. Совместимый обозреватель не возвращает файл cookie, если соединение использует протокол SSL. Ниже пример показывает, как для этого в файле Web.config для приложения:
 <configuration>
 <system.web>
   <authentication mode="Forms">
     <forms name=".ASPXAUTH"
       loginUrl="login.aspx" 
       protection="All"
       timeout="20"
       requireSSL="true">
     </forms>
   </authentication > 
   <authorization>
     <deny users="?" />
   </authorization>
 </system.web>
</configuration>
В этом примере действия выполняются, если задать файл cookie для передачи безопасно:

Visual C#.NET код
 string cookieName = FormsAuthentication.FormsCookieName.ToString(); 
 HttpCookie MyCookie = Context.Request.Cookies[cookieName];

 if (MyCookie.Secure)
 {
      Response.Write("The cookie is secure with SSL.");
      // Add other required code here.
 } 

Visual Basic.NET код
   Dim cookieName As String = FormsAuthentication.FormsCookieName.ToString
   Dim MyCookie As HttpCookie = Context.Request.Cookies(cookieName)
   If MyCookie.Secure Then
      Response.Write("The cookie is secure with SSL.")
      ' Add other required code here.
   End If

Использование шифрования метод FormsAuthentication Класс

Если используется только протокол SSL на веб-странице первоначального входа в систему для шифрования учетные данные, прошедшие проверку подлинности, убедитесь, что формы защищенные билет проверки подлинности, содержащихся в файле cookie. Формы билеты проверки подлинности, должны быть защищены, так как файл cookie передан между клиент и сервер, на всех последующих запросов. Для шифрования в формах Проверка подлинности билетов, Настройка снять защиту атрибут <forms></forms> элемент и использование Шифрование метод FormsAuthentication класс для шифрования билета.
<authentication mode="Forms">
  <forms name="MyAppFormsAuth"
       loginUrl="login.aspx"
       protection="All"
       timeout="20" 
       path="/" >
  </forms>
</authentication> 
Так как снять защиту атрибут имеет значение Все, когда приложение вызывает метод FormsAuthentication.Encrypt метод, билет должен быть проверен и быть шифрование.

Вызов Шифрование метод при создании билета проверки подлинности форм. Вы Обычно создание билета в Имя входа обработчик событий приложения.

Visual C#.NET код
string encryptedTicket = FormsAuthentication.Encrypt(authTicket);
Visual Basic.NET код
Dim encryptedTicket As String = FormsAuthentication.Encrypt(authTicket)

Ссылки

Сведения об ASP.NET и форм проверки подлинности посетите веб-узлы корпорации Майкрософт:
Проверка подлинности в ASP.NET:.NET безопасности Руководство
http://msdn2.Microsoft.com/en-us/library/ms978378.aspx
Поставщик проверки подлинности форм
http://msdn2.Microsoft.com/en-us/library/9wff0kyh (vs.71) .aspx
Для получения дополнительных сведений об использовании протокола SSL для защиты проверки подлинности форм, щелкните следующую статью номера статей базы знаний Майкрософт:
306590INFO: ASP.NET Общие сведения О безопасности
315588 ПРАКТИЧЕСКОЕ РУКОВОДСТВО. Безопасные веб-приложения ASP.NET с помощью клиентских сертификатов
313116 PRB: формы Запросы на проверку подлинности не направляются на loginUrl страницы
324069 ПРАКТИЧЕСКОЕ руководство: Настройка службы HTTPS в службах IIS
326340 AD - как: проверку подлинности Active Directory, используя проверку подлинности в формах и Visual Basic.NET
301240 SQL - ИНСТРУКЦИИ ПО: Реализация проверки подлинности на основе форм в приложении ASP.NET с помощью C# .NET
308157 SQL - инструкции по: реализация проверки подлинности на основе форм в приложении ASP.NET с помощью Visual Basic.NET
311495 ПРАКТИЧЕСКОЕ РУКОВОДСТВО. Реализация безопасности на основе ролей с помощью проверки подлинности на основе форм в ASP.NET Приложения с помощью Visual C#.NET
306238 ВЫПОЛНЕНИЕ Проверки, основанной на ролях безопасности с проверкой подлинности на основе форм в приложении ASP.NET с помощью Visual Basic.NET
312906 ПРАКТИЧЕСКОЕ РУКОВОДСТВО. Создание разделов с помощью Visual C#.NET для использования проверки подлинности для форм
с номером 313091 ПРАКТИЧЕСКОЕ РУКОВОДСТВО. Создание разделов с помощью Visual Basic.NET для использования в формах Проверка подлинности

Свойства

Код статьи: 813829 - Последний отзыв: 14 июня 2011 г. - Revision: 4.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft ASP.NET 1.1
Ключевые слова: 
kbcookie kbwebforms kbauthentication kbsecurity kbconfig kbinfo kbmt KB813829 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:813829

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com