Обычная проверка подлинности <basicAuthentication>

Общие сведения

Элемент <basicAuthentication> содержит параметры конфигурации для модуля обычной проверки подлинности служб IIS 7. Этот элемент настраивает для включения или отключения обычной проверки подлинности, определения области и домена входа по умолчанию, а также определения метода входа, используемого модулем.

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

Совместимость

Версия Примечания
IIS 10.0 Элемент <basicAuthentication> не был изменен в IIS 10.0.
IIS 8,5 Элемент <basicAuthentication> не был изменен в IIS 8.5.
IIS 8,0 Элемент <basicAuthentication> не был изменен в IIS 8.0.
IIS 7,5 Элемент <basicAuthentication> не был изменен в IIS 7.5.
IIS 7.0 Элемент <basicAuthentication> появился в IIS 7.0.
IIS 6,0 Элемент <basicAuthentication> заменяет части свойств метабазы AuthType и AuthFlags IIS 6.0.

Настройка

Установка iis 7 и более поздних версий по умолчанию не включает службу роли обычная проверка подлинности. Чтобы использовать обычную проверку подлинности в службах IIS, необходимо установить службу ролей, отключить анонимную проверку подлинности для веб-сайта или приложения, а затем включить обычную проверку подлинности для сайта или приложения.

Чтобы установить службу ролей обычная проверка подлинности, выполните следующие действия.

Windows Server 2012 или Windows Server 2012 R2

  1. На панели задач щелкните Диспетчер сервера.
  2. В диспетчер сервера откройте меню Управление и выберите пункт Добавить роли и компоненты.
  3. В мастере добавления ролей и компонентов нажмите кнопку Далее. Выберите тип установки и нажмите кнопку Далее. Выберите целевой сервер и нажмите кнопку Далее.
  4. На странице Роли сервера разверните узел Веб-сервер (IIS),веб-сервер, безопасность, а затем выберите Обычная проверка подлинности. Щелкните Далее.
    Снимок экрана: обычная проверка подлинности, выбранная в интерфейсе Windows Server 2012. .
  5. На странице Выбор компонентов нажмите кнопку Далее.
  6. На странице Подтверждение выбранных элементов для установки нажмите кнопку Установить.
  7. На странице Результаты нажмите кнопку Закрыть.

Windows 8 или Windows 8.1

  1. На начальном экране переместите указатель в левый нижний угол, щелкните правой кнопкой мыши кнопку Пуск и выберите пункт панель управления.
  2. В панель управления щелкните Программы и компоненты, а затем — Включить или выключить компоненты Windows.
  3. Разверните узлы Службы IIS, Службы Интернета, Безопасность, а затем выберите Обычная проверка подлинности.
    Снимок экрана: обычная проверка подлинности, выбранная в интерфейсе Windows 8.
  4. Нажмите кнопку ОК.
  5. Щелкните Закрыть.

Windows Server 2008 или Windows Server 2008 R2

  1. На панели задач нажмите кнопку Пуск, наведите указатель мыши на пункт Администрирование, а затем щелкните диспетчер сервера.
  2. В области иерархии диспетчер сервера разверните узел Роли, а затем щелкните Веб-сервер (IIS) .
  3. В области Веб-сервер (IIS) прокрутите страницу до раздела Службы ролей и щелкните Добавить службы ролей.
  4. На странице Выбор служб ролеймастера добавления служб ролей выберите Обычная проверка подлинности и нажмите кнопку Далее. Снимок экрана: обычная проверка подлинности, выбранная в интерфейсе Windows Server 2008.
  5. На странице Подтверждение выбранных элементов для установки нажмите кнопку Установить.
  6. На странице Результаты нажмите кнопку Закрыть.

Windows Vista или Windows 7

  1. На панели задач нажмите кнопку Пуск, а затем выберите пункт панель управления.
  2. В панель управления щелкните Программы и компоненты, а затем — Включить или отключить компоненты Windows.
  3. Разверните узлы Службы IIS, Веб-службы, Безопасность, Обычная проверка подлинности и нажмите кнопку ОК.
    Снимок экрана: обычная проверка подлинности, выбранная в интерфейсе Windows Vista или Windows 7.

Инструкции

Включение обычной проверки подлинности и отключение анонимной проверки подлинности

  1. Откройте диспетчер служб IIS.

    • Если вы используете Windows Server 2012 или Windows Server 2012 R2:

      • На панели задач щелкните диспетчер сервера, инструменты, а затем диспетчер служб IIS.
    • Если вы используете Windows 8 или Windows 8.1:

      • Удерживая нажатой клавишу Windows, нажмите букву X и щелкните панель управления.
      • Щелкните Администрирование, а затем дважды щелкните диспетчер служб IIS.
    • Если вы используете Windows Server 2008 или Windows Server 2008 R2:

      • На панели задач нажмите кнопку Пуск, наведите указатель на пункт Администрирование, а затем щелкните Диспетчер служб IIS.
    • Если вы используете Windows Vista или Windows 7:

      • На панели задач нажмите кнопку Пуск, а затем выберите пункт панель управления.
      • Дважды щелкните элемент Администрирование, а затем дважды щелкните диспетчер служб IIS.
  2. В области Подключения разверните имя сервера, узел Сайты, а затем выберите сайт, приложение или веб-службу, для которых требуется включить обычную проверку подлинности.

  3. Прокрутите страницу до раздела Безопасность на панели Главная и дважды щелкните элемент Проверка подлинности.

  4. В области Проверка подлинности выберите Обычная проверка подлинности, а затем в области Действия щелкните Включить.

  5. В области Проверка подлинности выберите Анонимная проверка подлинности, а затем нажмите кнопку Отключить на панели Действия .
    Снимок экрана: анонимная проверка подлинности, выбранная на панели

Конфигурация

Элемент <basicAuthentication> можно настроить на уровне сайта, приложения, виртуального каталога и URL-адреса. После установки службы роли СЛУЖБЫ IIS 7 фиксирует следующие параметры конфигурации в файле ApplicationHost.config.

<basicAuthentication enabled='false' />

Атрибуты

Атрибут Описание
defaultLogonDomain Необязательный атрибут String.

Указывает домен входа по умолчанию для обычной проверки подлинности.
enabled Дополнительный логический атрибут.

Указывает, включена ли обычная проверка подлинности.

Значение по умолчанию — false.
logonMethod Необязательный атрибут перечисления.

Атрибут logonMethod может иметь одно из следующих возможных значений. Значение по умолчанию — ClearText.
Значение Описание
Batch Этот тип входа предназначен для серверов пакетной службы, где процессы могут выполняться от имени пользователя без прямого вмешательства этого пользователя.

Числовое значение равно 1.
ClearText Этот тип входа сохраняет имя и пароль в пакете проверки подлинности, что позволяет серверу устанавливать подключения к другим сетевым серверам при олицетворении клиента.

Числовое значение равно 3.
Interactive Этот тип входа предназначен для пользователей, которые будут использовать компьютер в интерактивном режиме.

Числовое значение равно 0.
Network Этот тип входа предназначен для высокопроизводительных серверов для проверки подлинности паролей в виде открытого текста. Учетные данные не кэшируются для этого типа входа.

Числовое значение равно 2.
realm Необязательный атрибут String.

Задает область для обычной проверки подлинности.

Дочерние элементы

Отсутствует.

Образец конфигурации

Следующий пример конфигурации включает обычную проверку подлинности для веб-сайта, веб-приложения или веб-службы. По умолчанию эти параметры должны быть включены в файл ApplicationHost.config, и их необходимо включить в <location> элемент и использовать атрибут path для определения веб-сайта или приложения, к которому вы хотите применить параметры проверки подлинности.

<security>
   <authentication>
      <anonymousAuthentication enabled="false" />
      <basicAuthentication enabled="true" />
   </authentication>
</security>

Пример кода

В следующих примерах включается обычная проверка подлинности для сайта.

AppCmd.exe

appcmd.exe set config "Contoso" -section:system.webServer/security/authentication/basicAuthentication /enabled:"True" /commit:apphost

Примечание

При использовании AppCmd.exe для настройки этих параметров для параметра apphostфиксации необходимо задать значение . Это зафиксирует параметры конфигурации в соответствующем разделе расположения в файле ApplicationHost.config.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{

    private static void Main()
    {

        using (ServerManager serverManager = new ServerManager())
        {
            Configuration config = serverManager.GetApplicationHostConfiguration();

            ConfigurationSection basicAuthenticationSection = config.GetSection("system.webServer/security/authentication/basicAuthentication", "Contoso");
            basicAuthenticationSection["enabled"] = true;

            serverManager.CommitChanges();
        }
    }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample
    Sub Main()
        Dim serverManager As ServerManager = New ServerManager
        Dim config As Configuration = serverManager.GetApplicationHostConfiguration

        Dim basicAuthenticationSection As ConfigurationSection = config.GetSection("system.webServer/security/authentication/basicAuthentication", "Contoso")
        basicAuthenticationSection("enabled") = True

        serverManager.CommitChanges()
    End Sub
End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";

var basicAuthenticationSection = adminManager.GetAdminSection("system.webServer/security/authentication/basicAuthentication", "MACHINE/WEBROOT/APPHOST/Contoso");
basicAuthenticationSection.Properties.Item("enabled").Value = true;

adminManager.CommitChanges();

VBScript

Set adminManager = CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"

Set basicAuthenticationSection = adminManager.GetAdminSection("system.webServer/security/authentication/basicAuthentication", "MACHINE/WEBROOT/APPHOST/Contoso")
basicAuthenticationSection.Properties.Item("enabled").Value = True

adminManager.CommitChanges()