Добавление надежных поставщиков <управления добавление>
Общие сведения
Элемент <add>
<trustedProviders>
элемента добавляет поставщика в коллекцию поставщиков управления, которые являются доверенными для запуска диспетчером IIS и службой управления (WMSVC).
Перед вызовом поставщика для сайта или приложения функции пользователи .NET и роли .NET проверяют, является ли настроенный поставщик доверенным. Если он не является доверенным, параметр в атрибуте allowUntrustedProviders определяет, разрешено ли выполнение ненадежных поставщиков. Если недоверенные поставщики не разрешены и поставщик не входит в коллекцию доверенных поставщиков, поставщик не будет разрешен к запуску.
Совместимость
Версия | Примечания |
---|---|
IIS 10.0 | Элемент <add> не был изменен в IIS 10.0. |
IIS 8,5 | Элемент <add> не был изменен в IIS 8.5. |
IIS 8,0 | Элемент <add> не был изменен в IIS 8.0. |
IIS 7,5 | Элемент <add> не был изменен в IIS 7.5. |
IIS 7.0 | Элемент <add> элемента появился <trustedProviders> в 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 и нажмите кнопку ОК.
Инструкции
Отсутствует пользовательский интерфейс для настройки <trustedProviders>
элемента для IIS 7. Примеры настройки <trustedProviders>
элемента программными средствами см. в разделе Примеры кода этого документа.
Конфигурация
Атрибуты
Атрибут | Описание |
---|---|
type |
Обязательный строковый атрибут. Указывает имя типа с указанием сборки для поставщика. |
Дочерние элементы
Отсутствует.
Образец конфигурации
Следующий элемент по умолчанию <trustedProviders>
настраивается в корневом файле Administration.config в IIS 7.0 при установке службы роли службы управления.
<trustedProviders allowUntrustedProviders="false">
<add type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add type="System.Web.Security.WindowsTokenRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</trustedProviders>
Пример кода
Примечание
Примеры в этом документе иллюстрируют использование сборки с управляемым кодом, хранящейся в глобальном кэше сборок .NET (GAC). Прежде чем использовать код в этих примерах для развертывания собственных сборок, необходимо получить сведения о сборке из GAC. Для этого выполните следующие действия.
- В Windows Обозреватель откройте путь C:\Windows\assembly, где C: — это диск операционной системы.
- Найдите сборку.
- Щелкните сборку правой кнопкой мыши и выберите пункт Свойства.
- Скопируйте значение языка и региональных параметров ; Например: Нейтральная.
- Скопируйте номер версии ; например: 1.0.0.0.
- Скопируйте значение токена открытого ключа ; например: 426f62526f636b73.
- Щелкните Отмена.
В следующих примерах кода добавляется поставщик с именем Contoso.Provider в коллекцию доверенных поставщиков управления.
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 trustedProvidersSection = config.GetSection("system.webServer/management/trustedProviders");
ConfigurationElementCollection trustedProvidersCollection = trustedProvidersSection.GetCollection();
ConfigurationElement addElement = trustedProvidersCollection.CreateElement("add");
addElement["type"] = @"Contoso.Provider, System.Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73";
trustedProvidersCollection.Add(addElement);
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 trustedProvidersSection As ConfigurationSection = config.GetSection("system.webServer/management/trustedProviders")
Dim trustedProvidersCollection As ConfigurationElementCollection = trustedProvidersSection.GetCollection
Dim addElement As ConfigurationElement = trustedProvidersCollection.CreateElement("add")
addElement("type") = "Contoso.Provider, System.Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73"
trustedProvidersCollection.Add(addElement)
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject("Microsoft.ApplicationHost.WritableAdminManager");
adminManager.CommitPath = "MACHINE/WEBROOT";
adminManager.SetMetadata("pathMapper", "AdministrationConfig");
var trustedProvidersSection = adminManager.GetAdminSection("system.webServer/management/trustedProviders", "MACHINE/WEBROOT");
var trustedProvidersCollection = trustedProvidersSection.Collection;
var addElement = trustedProvidersCollection.CreateNewElement("add");
addElement.Properties.Item("type").Value = "Contoso.Provider, System.Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73";
trustedProvidersCollection.AddElement(addElement);
adminManager.CommitChanges();
VBScript
Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT"
adminManager.SetMetadata "pathMapper", "AdministrationConfig"
Set trustedProvidersSection = adminManager.GetAdminSection("system.webServer/management/trustedProviders", "MACHINE/WEBROOT")
Set trustedProvidersCollection = trustedProvidersSection.Collection
Set addElement = trustedProvidersCollection.CreateNewElement("add")
addElement.Properties.Item("type").Value = "Contoso.Provider, System.Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73"
trustedProvidersCollection.AddElement(addElement)
adminManager.CommitChanges()
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по