Элемент forms для элемента credentials для элемента authentication (схема параметров ASP.NET)
Настраивает приложение ASP.NET для пользовательской проверки подлинности на основе форм.
<forms
name="name"
loginUrl="URL"
defaultUrl="URL"
protection="[All|None|Encryption|Validation]"
timeout="[MM]"
path="path"
requireSSL="[true|false]"
slidingExpiration="[true|false]">
enableCrossAppRedirects="[true|false]"
cookieless="[UseUri|UseCookies|AutoDetect|UseDeviceProfile]"
domain="domain name"
ticketCompatibilityMode="[Framework20|Framework40]">
<credentials>...</credentials>
</forms>
Атрибуты и элементы
В следующих разделах описаны атрибуты, дочерние и родительские элементы.
Атрибуты
Атрибут |
Описание |
---|---|
cookieless |
Необязательный атрибут. Определяет, используются ли файлы Cookie и как они функционируют. Этот атрибут может принимать одно из следующих значений. ![]()
В веб-сайтах ASP.NET с поддержкой AJAX следует использовать значение по умолчанию UseCookies для атрибута cookieless.Параметры, которые используют файлы Cookie, закодированные в URL-адресе, не поддерживаются библиотеками клиентских скриптов ASP.NET AJAX.
ЗначениеОписание
UseCookies Определяет, будут ли файлы Cookie использоваться всегда, вне зависимости от устройства.
UseUri Указывают, что файлы Cookie не будут использоваться никогда.
AutoDetect Указывает использовать файлы Cookie в том случае, если профиль устройства поддерживает файлы Cookie; в ином случае файлы Cookie не используются.Для обозревателей настольных систем, заведомо поддерживающих использование файлов Cookie, будет применяться механизм тестирования в целях использования файлов Cookie, если их поддержка включена.Если устройство не поддерживает файлы Cookie, механизм тестирования использоваться не будет.
UseDeviceProfile Указывает использовать файлы Cookie, если обозреватель поддерживает файлы Cookie. В ином случае файлы Cookie не используются. Для устройств с поддержкой файлов Cookie тестирование с целью определить, включена ли поддержка файлов Cookie, не производится.
Этот атрибут не использовался до .NET Framework версии 2.0. По умолчанию используется значение UseDeviceProfile. |
defaultUrl |
Необязательный атрибут. Определяет URL-адрес по умолчанию, который используется для перехода после проверки подлинности. Этот атрибут не использовался до .NET Framework версии 2.0. По умолчанию используется значение "default.aspx". |
domain |
Необязательный атрибут. Определяет дополнительный домен для настройки исходящих файлов Cookie проверки подлинности с помощью форм. Этот параметр имеет приоритет по сравнению с доменом, который используется в элементе httpCookies. Этот атрибут не использовался до .NET Framework версии 2.0. Значение по умолчанию — пустая строка (""). |
enableCrossAppRedirects |
Необязательный атрибут. Показывает, переадресуется ли пользователь, прошедший проверку подлинности, на URL-адреса в других веб-приложениях. ![]()
При переадресации в различных приложениях следует убедиться, что несколько атрибутов в Элемент forms для элемента credentials для элемента authentication (схема параметров ASP.NET) дублируются в приложениях, прошедших проверку подлинности.Дополнительные сведения и пример см. в разделе Проверка подлинности форм между приложениями.
Этот атрибут может принимать одно из следующих значений.
ЗначениеОписание
True Определяет, что пользователь, прошедший проверку подлинности, переадресуется на URL-адреса в других веб-приложениях.
False Определяет, что пользователь, прошедший проверку подлинности, не может переадресовываться на URL-адреса в других веб-приложениях.
Этот атрибут не использовался до .NET Framework версии 2.0. По умолчанию используется значение False. |
loginUrl |
Необязательный атрибут. Задает URL-адрес, на который должен быть перенаправлен запрос на вход, если допустимый файл Cookie проверки подлинности не найден. По умолчанию используется значение login.aspx. |
name |
Необязательный атрибут. Задает используемый для проверки подлинности файл Cookie HTTP. Если на одном сервере запущено несколько приложений и каждому приложению требуется уникальный файл Cookie, то необходимо настроить имя файла Cookie в файле Web.config для каждого приложения. По умолчанию используется значение ".ASPXAUTH". |
path |
Необязательный атрибут. Задает путь для создаваемых приложением файлов Cookie. Значением по умолчанию является косая черта (/), поскольку большинство обозревателей учитывают регистр символов и не отсылают файлы Cookie назад, если имеется несоответствие регистра символов в строке пути. |
protection |
Необязательный атрибут. Задает тип шифрования (если оно применяется), используемого для файлов Cookie. Этот атрибут может принимать одно из следующих значений.
ЗначениеОписание
All Указывает на то, что приложение использует для защиты файлов Cookie как проверку данных, так и шифрование.В этом параметре используется алгоритм настроенной проверки данных, основанной на элементе machineKey.Для шифрования используется тройной алгоритм DES (3DES), если доступен сам алгоритм, а ключ имеет длину не менее 48 байтов.Значение All является рекомендуемым значением по умолчанию.
Encryption Указывает, что шифрование файлов Cookie выполняется с помощью алгоритмов 3DES или DES, но проверка данных в файлах Cookie не производится.Используемые таким образом файлы Cookie могут стать объектом некоторых атак открытого текста.
None Указывает, что как шифрование, так и проверка отключены для тех веб-узлов, которые используют файлы Cookie только для личной настройки и имеют менее жесткие требования безопасности.Не следует использовать файлы Cookie таким образом; тем не менее, это наименее ресурсоемкий способ обеспечить возможность личной настройки в платформе .NET Framework.
Validation Указывает схеме проверки подтверждать неизменность содержимого зашифрованного файла Cookie при передаче.Файл Cookie создается посредством проверки файлов Cookie путем присоединения к данным файла Cookie ключа проверки, а также вычисления кода проверки подлинности сообщения, который добавляется к исходящему файлу Cookie.
По умолчанию используется значение All. |
requireSSL |
Необязательный атрибут. Указывает, требуется ли SSL-соединение для передачи файлов Cookie проверки подлинности. Этот атрибут может принимать одно из следующих значений.
ЗначениеОписание
True Указывает, что для защиты учетных данных пользователя требуется SSL-соединение. При значении True ASP.NET задает свойство Secure для файла Cookie проверки подлинности, и совместимый обозреватель не возвращает файл Cookie, если только при соединении не используется шифрование SSL.
False Показывает, что SSL-соединение не требуется для передачи файлов Cookie.По умолчанию используется значение False.
По умолчанию используется значение False. |
slidingExpiration |
Необязательный атрибут. Указывает, включена ли поддержка скользящего срока действия. При скользящем сроке действия в отдельном сеансе активное время проверки подлинности для файла Cookie сбрасывается при каждом запросе. Этот атрибут может принимать одно из следующих значений.
ЗначениеОписание
True Указывает на использование скользящего срока действия.Файл Cookie проверки подлинности обновляется, и при последующих запросах в рамках одного сеанса время срока действия сбрасывается.
False Указывает, что скользящий срок действия не поддерживается и срок действия файла Cookie истекает через заданное время после его первоначального создания.
Значение по умолчанию — True. |
ticketCompatibilityMode |
Необязательный атрибут. Определяет, какое время используется для даты окончания срока действия билета при проверке подлинности форм: в формате UTC или местное. Этот атрибут может принимать одно из следующих значений.
ЗначениеОписание
Framework20 Указывает, что дата окончания срока действия билета хранится в виде местного времени.
Framework40 Указывает, что дата окончания срока действия билета хранится в формате UTC.
Значение по умолчанию — Framework20. |
timeout |
Необязательный атрибут. Определяет промежуток времени в минутах, после которого срок действия файлов Cookie истекает. Если для атрибута SlidingExpiration установлено значение true, атрибут timeout является скользящим значением, которое истекает через установленный интервал в минутах со времени получения последнего запроса. Чтобы избежать снижения производительности и появления многочисленных предупреждений обозревателя в случае, когда включены предупреждения файлов Cookie, обновление файлов Cookie выполняется по прошествии более половины указанного времени. Это может привести к потере точности. По умолчанию используется значение "30" (30 минут). ![]()
В ASP.NET версии 1.1 срок действия постоянных файлов Cookie не истекает вне зависимости от значения атрибута времени ожидания.Однако в ASP.NET версии 2.0 срок действия постоянных файлов Cookie истекает согласно настройке атрибута времени ожидания.
|
Дочерние элементы
Подтег |
Описание |
---|---|
credentials |
Разрешает необязательные определения учетных данных (имени и пароля) в файле конфигурации. Кроме того, для управления проверкой можно реализовать использование внешнего источника (например базы данных) в настраиваемой парольной схеме. |
Родительские элементы
Элемент |
Описание |
---|---|
configuration |
Задает обязательный корневой элемент любого файла конфигурации, который используется средой CLR и приложениями .NET Framework. |
system.web |
Задает корневой элемент для параметров конфигурации ASP.NET в файле конфигурации и содержит элементы конфигурации для настройки веб-приложений ASP.NET и управления работой этих приложений. |
authentication |
Настраивает схему проверки подлинности ASP.NET, используемую для идентификации пользователей, которые работают с приложением ASP.NET. |
Заметки
Элемент forms настраивает приложение ASP.NET для пользовательской проверки подлинности с помощью форм. Если на одном сервере выполняются несколько приложений, то для каждого приложения в файле Web.config необходимо настроить атрибуты элемента forms. Дополнительные сведения см. в разделе Проверка подлинности форм между приложениями.
При пересылке билета проверки подлинности с помощью форм в URI максимальный размер URI может быть превышен. Если общая длина билета анонимного идентификатора, билета подлинности форм, идентификатора сеанса и данных пользователя больше максимально допустимой длины URI, запрос завершится неудачно с ошибкой 400-Bad Request (неверный запрос).
Параметры по умолчанию
Следующий установленный по умолчанию элемент forms не задается явно ни в файле Machine.config, ни в корневом файле Web.config. Однако данное приложение в .NET Framework версии 2.0 возвращает эту конфигурацию по умолчанию.
<forms
name=".ASPXAUTH"
loginUrl="login.aspx"
defaultUrl="default.aspx"
protection="All"
timeout="30"
path="/"
requireSSL="false"
slidingExpiration="true"
cookieless="UseDeviceProfile" domain=""
enableCrossAppRedirects="false">
<credentials passwordFormat="SHA1" />
</forms>
Для .NET Framework версии 1.1 следующий элемент по умолчанию forms настраивается в файле Machine.config.
<forms
name=".ASPXAUTH"
loginUrl="login.aspx"
protection="All"
timeout="30"
path="/"
requireSSL="false"
slidingExpiration="true">
<credentials passwordFormat="SHA1"></credentials>
</forms>
Для .NET Framework версии 1.0 следующий элемент по умолчанию forms настраивается в файле Machine.config.
<forms
name=".ASPXAUTH"
loginUrl="login.aspx"
protection="All"
timeout="30"
path="/" >
<credentials passwordFormat="SHA1"></credentials>
</forms>
Пример
В следующем примере кода показано, как настроить веб-узел для использования проверки подлинности с помощью форм, указывается имя файла Cookie, в котором будут передаваться данные входа от клиента, и задается имя страницы входа, используемой в том случае, если первоначальная проверка подлинности завершилась неудачно.
<configuration>
<system.web>
<authentication mode="Forms">
<forms
name="401kApp"
loginUrl="/login.aspx"
cookieless="AutoDetect"
defaultUrl="myCustomLogin.aspx">
<credentials passwordFormat = "SHA1">
<user name="UserName"
password="07B7F3EE06F278DB966BE960E7CBBD103DF30CA6"/>
</credentials>
</forms>
</authentication>
</system.web>
</configuration>
Сведения об элементе
Обработчик раздела конфигурации |
|
Элемент конфигурации |
|
Настраиваемые расположения |
Machine.config Файл Web.config корневого уровня Файл Web.config уровня приложения |
Требования |
Microsoft IIS версии 5.0, 5.1 или 6.0 .NET Framework версии 1.0, 1.1 или 2.0 Microsoft Visual Studio 2003 или Visual Studio 2005 |
См. также
Задачи
Практическое руководство. Настройка отдельных каталогов с помощью параметров расположения
Пошаговое руководство. Отключение параметров конфигурации ASP.NET
Ссылки
Элемент authentication (схема параметров ASP.NET)
Элемент credentials для элемента forms для элемента authentication (схема параметров ASP.NET)
Элемент system.web (схема параметров ASP.NET)
Элемент passport для элемента credentials для элемента authentication (схема параметров ASP.NET)
Элемент configuration (схема общих параметров)
Основные понятия
Проверка подлинности форм между приложениями
Иерархия и наследование файла конфигурации ASP.NET
Настройка обеспечения безопасности ASP.NET
Другие ресурсы
Общие параметры конфигурации (ASP.NET)
Параметры конфигурации ASP.NET