Поставщики <авторизации управления>
Общие сведения
Элемент <providers>
<authorization>
элемента указывает поставщиков авторизации, которые авторизуют пользователей диспетчера IIS и пользователей Windows, которые удаленно подключаются к сайтам и приложениям с помощью диспетчера IIS.
Примечание
Поставщик авторизации по умолчанию ConfigurationAuthorizationProvider использует файл Administration.config IIS для хранения правил авторизации для диспетчера IIS.
Совместимость
Версия | Примечания |
---|---|
IIS 10.0 | Элемент <providers> не был изменен в IIS 10.0. |
IIS 8,5 | Элемент <providers> не был изменен в IIS 8.5. |
IIS 8,0 | Элемент <providers> не был изменен в IIS 8.0. |
IIS 7,5 | Элемент <providers> не был изменен в IIS 7.5. |
IIS 7.0 | Элемент <providers> элемента появился <authorization> в IIS 7.0. |
IIS 6,0 | Н/Д |
Настройка
Установка служб IIS 7 и более поздних версий по умолчанию не включает службу роли службы управления . Чтобы установить эту службу роли, выполните следующие действия.
Windows Server 2012 или Windows Server 2012 R2
- На панели задач щелкните Диспетчер сервера.
- В диспетчер сервера откройте меню Управление и выберите пункт Добавить роли и компоненты.
- В мастере добавления ролей и компонентов нажмите кнопку Далее. Выберите тип установки и нажмите кнопку Далее. Выберите целевой сервер и нажмите кнопку Далее.
- На странице Роли сервера разверните узел Веб-сервер (IIS), средства управления, а затем выберите Служба управления. Щелкните Далее.
.
- На странице Выбор компонентов нажмите кнопку Далее.
- На странице Подтверждение выбранных элементов для установки нажмите кнопку Установить.
- На странице Результаты нажмите кнопку Закрыть.
Windows 8 или Windows 8.1
- На начальном экране переместите указатель в левый нижний угол, щелкните правой кнопкой мыши кнопку Пуск и выберите пункт панель управления.
- В панель управления щелкните Программы и компоненты, а затем — Включить или выключить компоненты Windows.
- Разверните узел Службы IIS, средства веб-управления, а затем выберите Служба управления IIS.
- Нажмите кнопку ОК.
- Щелкните Закрыть.
Windows Server 2008 или Windows Server 2008 R2
- На панели задач нажмите кнопку Пуск, наведите указатель мыши на пункт Администрирование, а затем щелкните диспетчер сервера.
- В области иерархии диспетчер сервера разверните узел Роли, а затем щелкните Веб-сервер (IIS) .
- В области Веб-сервер (IIS) прокрутите страницу до раздела Службы ролей и щелкните Добавить службы ролей.
- На странице Выбор служб ролеймастера добавления служб ролей выберите Служба управления и нажмите кнопку Далее.
- На странице Подтверждение выбранных элементов для установки нажмите кнопку Установить.
- На странице Результаты нажмите кнопку Закрыть.
Windows Vista или Windows 7
- На панели задач нажмите кнопку Пуск, а затем выберите пункт панель управления.
- В панель управления щелкните Программы и компоненты, а затем — Включить или отключить компоненты Windows.
- Разверните узел Службы IIS, а затем — Средство управления веб-сайтом.
- Выберите Служба управления IIS и нажмите кнопку ОК.
Инструкции
Отсутствует пользовательский интерфейс для настройки <providers>
элемента <authorization>
для IIS 7. Примеры программной настройки <providers>
элемента <authorization>
элемента см. в разделе Примеры кода этого документа.
Конфигурация
Атрибуты
Отсутствует.
Дочерние элементы
Элемент | Описание |
---|---|
add |
Необязательный элемент. Добавляет поставщик в коллекцию поставщиков авторизации. |
Образец конфигурации
Следующий элемент по умолчанию <providers>
в элементе <authorization>
настраивается в корневом файле Administration.config в IIS 7 при установке службы роли службы управления.
<authorization defaultProvider="ConfigurationAuthorizationProvider">
<providers>
<add name="ConfigurationAuthorizationProvider"
type="Microsoft.Web.Management.Server.ConfigurationAuthorizationProvider, Microsoft.Web.Management, Version=7.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</providers>
</authorization>
Пример кода
Примечание
Примеры в этом документе иллюстрируют использование сборки с управляемым кодом, хранящейся в глобальном кэше сборок .NET (GAC). Прежде чем использовать код в этих примерах для развертывания собственных сборок, необходимо получить сведения о сборке из GAC. Для этого выполните следующие действия.
- В Windows Обозреватель откройте путь C:\Windows\assembly, где C: — это диск операционной системы.
- Найдите сборку.
- Щелкните сборку правой кнопкой мыши и выберите пункт Свойства.
- Скопируйте значение языка и региональных параметров ; Например: Нейтральная.
- Скопируйте номер версии ; например: 1.0.0.0.
- Скопируйте значение токена открытого ключа ; например: 426f62526f636b73.
- Щелкните Отмена.
В следующих примерах кода добавляется поставщик авторизации с именем ContosoAuthorizationProvider в коллекцию поставщиков авторизации управления и устанавливается поставщик авторизации по умолчанию ContosoAuthorizationProvider.
AppCmd.exe
Примечание
Вы не можете настроить <system.webServer/Management>
параметры с помощью AppCmd.exe.
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.GetAdministrationConfiguration();
ConfigurationSection authorizationSection = config.GetSection("system.webServer/management/authorization");
ConfigurationElementCollection providersCollection = authorizationSection.GetCollection("providers");
ConfigurationElement addElement = providersCollection.CreateElement("add");
addElement["name"] = @"ContosoAuthorizationProvider";
addElement["type"] = @"Contoso.Provider, System.Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73";
providersCollection.Add(addElement);
authorizationSection["defaultProvider"] = "ContosoAuthorizationProvider";
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.GetAdministrationConfiguration
Dim authorizationSection As ConfigurationSection = config.GetSection("system.webServer/management/authorization")
Dim providersCollection As ConfigurationElementCollection = authorizationSection.GetCollection("providers")
Dim addElement As ConfigurationElement = providersCollection.CreateElement("add")
addElement("name") = "ContosoAuthorizationProvider"
addElement("type") = "Contoso.Provider, System.Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73"
providersCollection.Add(addElement)
authorizationSection("defaultProvider") = "ContosoAuthorizationProvider"
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject("Microsoft.ApplicationHost.WritableAdminManager");
adminManager.CommitPath = "MACHINE/WEBROOT";
adminManager.SetMetadata("pathMapper", "AdministrationConfig");
var authorizationSection = adminManager.GetAdminSection("system.webServer/management/authorization", "MACHINE/WEBROOT");
var providersCollection = authorizationSection.ChildElements.Item("providers").Collection;
var addElement = providersCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "ContosoAuthorizationProvider";
addElement.Properties.Item("type").Value = "Contoso.Provider, System.Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73";
providersCollection.AddElement(addElement);
authorizationSection.Properties.Item("defaultProvider").Value = "ContosoAuthorizationProvider";
adminManager.CommitChanges();
VBScript
Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT"
adminManager.SetMetadata "pathMapper", "AdministrationConfig"
Set authorizationSection = adminManager.GetAdminSection("system.webServer/management/authorization", "MACHINE/WEBROOT")
Set providersCollection = authorizationSection.ChildElements.Item("providers").Collection
Set addElement = providersCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "ContosoAuthorizationProvider"
addElement.Properties.Item("type").Value = "Contoso.Provider, System.Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73"
providersCollection.AddElement(addElement)
authorizationSection.Properties.Item("defaultProvider").Value = "ContosoAuthorizationProvider"
adminManager.CommitChanges()
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по