Gestion <management>
Vue d’ensemble
L’élément <management>
spécifie les paramètres de gestion à distance pour les utilisateurs qui se connectent à votre serveur à l’aide du Gestionnaire IIS. L’élément <management>
contient trois éléments enfants :
<authentication>
- Cet élément enfant contient une liste de fournisseurs d’authentification dans un élément<providers>
et peut contenir les noms d’utilisateur et les mots de passe des comptes d’utilisateur du Gestionnaire IIS si vous utilisez ConfigurationAuthenticationProvider par défaut comme fournisseur d’authentification.<authorization>
- Cet élément enfant contient une liste de fournisseurs d’autorisation dans un élément<providers>
et peut contenir les règles d’autorisation des comptes d’utilisateur si vous utilisez ConfigurationAuthorizationProvider par défaut comme fournisseur d’autorisation.<trustedProviders>
- Cet élément enfant contient une liste des fournisseurs de gestion approuvés par le Gestionnaire IIS et le service de gestion (WMSVC).
Remarque
Les paramètres de l’élément <management>
ne peuvent être configurés que dans le fichier Administration.config.
Compatibilité
Version | Notes |
---|---|
IIS 10.0 | L’élément <management> n’a pas été modifié dans IIS 10.0. |
IIS 8.5 | L’élément <management> n’a pas été modifié dans IIS 8.5. |
IIS 8.0 | L’élément <management> n’a pas été modifié dans IIS 8.0. |
IIS 7.5 | L’élément <management> n’a pas été modifié dans IIS 7.5. |
IIS 7.0 | L’élément <management> a été introduit dans IIS 7.0. |
IIS 6.0 | S/O |
Programme d’installation
L’installation par défaut d’IIS 7 et versions ultérieures n’inclut pas le service de rôle Service de gestion. Pour installer ce service de rôle, procédez comme suit.
Windows Server 2012 ou Windows Server 2012 R2
- Dans la barre des tâches, cliquez sur Gestionnaire de serveur.
- Dans Gestionnaire de serveur, cliquez sur le menu Gérer, puis sur Ajouter des rôles et des fonctionnalités.
- Dans l’Assistant Ajout de rôles et de fonctionnalités, cliquez sur Suivant. Sélectionnez le type d’installation, puis cliquez sur Suivant. Sélectionnez le serveur de destination, puis cliquez sur Suivant.
- Dans la page Rôles serveur, développez Serveur web (IIS), Outils de gestion, puis sélectionnez Service de gestion. Sélectionnez Suivant.
. - Dans la page Sélectionner les composants, cliquez sur Suivant.
- Dans la page Confirmer les sélections d’installation, cliquez sur Installer.
- Dans la page Résultats , cliquez sur Fermer.
Windows 8 ou Windows 8.1
- Dans l’écran Démarrer, déplacez le pointeur jusqu’au coin inférieur gauche, cliquez avec le bouton droit sur le bouton Démarrer, puis cliquez sur Panneau de configuration.
- Dans Panneau de configuration, cliquez sur Programmes et fonctionnalités, puis sur Activer ou désactiver des fonctionnalités Windows.
- Développez Internet Information Services, Outils de gestion web, puis sélectionnez Service de gestion IIS.
- Cliquez sur OK.
- Cliquez sur Fermer.
Windows Server 2008 ou Windows Server 2008 R2
- Dans la barre des tâches, cliquez sur Démarrer, pointez sur Outils d’administration, puis cliquez sur Gestionnaire de serveur.
- Dans le volet de hiérarchie du Gestionnaire de serveur, développez Rôles, puis cliquez sur Serveur web (IIS).
- Dans le volet Serveur web (IIS), faites défiler jusqu’à la section Services de rôle, puis cliquez sur Ajouter des services de rôle.
- Dans la page Sélectionner des services de rôle de l’Assistant Ajout de services de rôle, sélectionnez Service de gestion, puis cliquez sur Suivant.
- Dans la page Confirmer les sélections pour l'installation, cliquez sur Installer.
- Dans la page Résultats , cliquez sur Fermer.
Windows Vista ou Windows 7
- Dans la barre des tâches, cliquez sur Démarrer, puis sur Panneau de configuration.
- Dans Panneau de configuration, cliquez sur Programmes et fonctionnalités, puis sur Activer ou désactiver des fonctionnalités Windows.
- Développez Internet Information Services, puis Outil de gestion web.
- Sélectionnez Service de gestion IIS, puis cliquez sur OK.
Procédure
Comment activer les informations d’identification du Gestionnaire IIS pour un serveur
Ouvrez le Gestionnaire Internet Information Services (IIS) :
Si vous utilisez Windows Server 2012 ou Windows Server 2012 R2 :
- Dans la barre des tâches, cliquez sur Gestionnaire de serveur, sur Outils, puis sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows 8 ou Windows 8.1 :
- Maintenez la touche Windows enfoncée, appuyez sur la lettre X, puis cliquez sur Panneau de configuration.
- Cliquez sur Outils d’administration, puis double-cliquez sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows Server 2008 ou Windows Server 2008 R2 :
- Dans la barre des tâches, cliquez sur Démarrer, pointez sur Outils d’administration, puis cliquez sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows Vista ou Windows 7 :
- Dans la barre des tâches, cliquez sur Démarrer, puis sur Panneau de configuration.
- Double-cliquez sur Outils d’administration, puis sur Gestionnaire Internet Information Services (IIS).
Dans le volet Connexions, cliquez sur le nom du serveur.
Dans le volet Accueil du serveur, double-cliquez sur Service de gestion.
Dans la page Service de gestion, choisissez Informations d’identification Windows ou Informations d’identification du Gestionnaire IIS, puis cliquez sur Appliquer dans le volet Actions.
Comment ajouter des informations d’identification utilisateur du Gestionnaire IIS à un serveur
Ouvrez le Gestionnaire Internet Information Services (IIS) :
Si vous utilisez Windows Server 2012 ou Windows Server 2012 R2 :
- Dans la barre des tâches, cliquez sur Gestionnaire de serveur, sur Outils, puis sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows 8 ou Windows 8.1 :
- Maintenez la touche Windows enfoncée, appuyez sur la lettre X, puis cliquez sur Panneau de configuration.
- Cliquez sur Outils d’administration, puis double-cliquez sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows Server 2008 ou Windows Server 2008 R2 :
- Dans la barre des tâches, cliquez sur Démarrer, pointez sur Outils d’administration, puis cliquez sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows Vista ou Windows 7 :
- Dans la barre des tâches, cliquez sur Démarrer, puis sur Panneau de configuration.
- Double-cliquez sur Outils d’administration, puis sur Gestionnaire Internet Information Services (IIS).
Dans le volet Connexions, cliquez sur le nom du serveur.
Dans le volet Accueil du serveur, double-cliquez sur Utilisateurs du Gestionnaire IIS.
Dans la page Utilisateurs du Gestionnaire IIS, cliquez sur Ajouter un utilisateur... dans le volet Actions.
Dans la boîte de dialogue Ajouter un utilisateur, entrez le nom d’utilisateur et le mot de passe, puis cliquez sur OK.
Comment autoriser un utilisateur du Gestionnaire IIS pour un site ou une application
Ouvrez le Gestionnaire Internet Information Services (IIS) :
Si vous utilisez Windows Server 2012 ou Windows Server 2012 R2 :
- Dans la barre des tâches, cliquez sur Gestionnaire de serveur, sur Outils, puis sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows 8 ou Windows 8.1 :
- Maintenez la touche Windows enfoncée, appuyez sur la lettre X, puis cliquez sur Panneau de configuration.
- Cliquez sur Outils d’administration, puis double-cliquez sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows Server 2008 ou Windows Server 2008 R2 :
- Dans la barre des tâches, cliquez sur Démarrer, pointez sur Outils d’administration, puis cliquez sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows Vista ou Windows 7 :
- Dans la barre des tâches, cliquez sur Démarrer, puis sur Panneau de configuration.
- Double-cliquez sur Outils d’administration, puis sur Gestionnaire Internet Information Services (IIS).
Dans le volet Connexions, accédez à la connexion, au site, à l’application ou au répertoire pour lequel vous souhaitez autoriser un utilisateur du Gestionnaire IIS.
Dans le volet Accueil, double-cliquez sur Autorisations du Gestionnaire IIS.
Dans la page Autorisations du Gestionnaire IIS, cliquez sur Autoriser l’utilisateur... dans le volet Actions.
Dans la boîte de dialogue Autoriser l’utilisateur, choisissez Gestionnaire IIS, puis cliquez sur Sélectionner...
Dans la boîte de dialogue Utilisateurs, mettez en surbrillance le compte d’utilisateur que vous souhaitez autoriser, puis cliquez sur OK.
Dans la boîte de dialogue Autoriser l’utilisateur, cliquez sur OK.
Configuration
Attributs
Aucune.
Éléments enfants
Élément | Description |
---|---|
authentication |
Élément facultatif. Configure les paramètres d’authentification pour la gestion à distance du serveur web. |
authorization |
Élément facultatif. Configure les paramètres d’autorisation pour la gestion à distance du serveur web. |
trustedProviders |
Élément facultatif. Configure les fournisseurs approuvés par le Gestionnaire IIS et le service de gestion (WMSVC). |
Exemple Configuration
L’élément par défaut <management>
suivant est configuré dans le fichier Administration.config dans IIS 7 lorsque le service de rôle Service de gestion est installé.
<management>
<authentication defaultProvider="ConfigurationAuthenticationProvider">
<providers>
<add name="ConfigurationAuthenticationProvider"
type="Microsoft.Web.Management.Server.ConfigurationAuthenticationProvider, Microsoft.Web.Management, Version=7.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</providers>
</authentication>
<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>
<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>
</management>
L’exemple de configuration suivant montre comment ajouter un utilisateur du Gestionnaire IIS nommé ContosoUser à Administration.config.
<credentials>
<add name="ContosoUser" password="Encrypted-Password-Data" enabled="true" />
</credentials>
L’exemple de configuration suivant montre comment autoriser un utilisateur du Gestionnaire IIS nommé Contoso, un groupe Windows nommé Groupe de tests et un utilisateur Windows nommé Contoso2 à se connecter au site web par défaut à l’aide du Gestionnaire IIS.
<authorizationRules>
<scope path="/Default Web Site">
<add name="Contoso" />
<add name="COMPUTER01\Test Group" isRole="true" />
<add name="COMPUTER01\Contoso2" />
</scope>
</authorizationRules>
Exemple de code
Les exemples de code suivants ajoutent un compte d’utilisateur du Gestionnaire IIS nommé ContosoUser à IIS 7.
AppCmd.exe
Remarque
Vous ne pouvez pas configurer les paramètres <system.webServer/management/authentication>
à l’aide d’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 authenticationSection = config.GetSection("system.webServer/management/authentication");
ConfigurationElementCollection credentialsCollection = authenticationSection.GetCollection("credentials");
ConfigurationElement addElement = credentialsCollection.CreateElement("add");
addElement["name"] = @"ContosoUser";
addElement["password"] = @"P@ssw0rd";
addElement["enabled"] = true;
credentialsCollection.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 authenticationSection As ConfigurationSection = config.GetSection("system.webServer/management/authentication")
Dim credentialsCollection As ConfigurationElementCollection = authenticationSection.GetCollection("credentials")
Dim addElement As ConfigurationElement = credentialsCollection.CreateElement("add")
addElement("name") = "ContosoUser"
addElement("password") = "P@ssw0rd"
credentialsCollection.Add(addElement)
addElement("enabled") = True
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject("Microsoft.ApplicationHost.WritableAdminManager");
adminManager.CommitPath = "MACHINE/WEBROOT";
adminManager.SetMetadata("pathMapper", "AdministrationConfig");
var authenticationSection = adminManager.GetAdminSection("system.webServer/management/authentication", "MACHINE/WEBROOT");
var credentialsCollection = authenticationSection.ChildElements.Item("credentials").Collection;
var addElement = credentialsCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "ContosoUser";
addElement.Properties.Item("password").Value = "P@ssw0rd";
addElement.Properties.Item("enabled").Value = true;
credentialsCollection.AddElement(addElement);
adminManager.CommitChanges();
VBScript
Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT"
adminManager.SetMetadata "pathMapper", "AdministrationConfig"
Set authenticationSection = adminManager.GetAdminSection("system.webServer/management/authentication", "MACHINE/WEBROOT")
Set credentialsCollection = authenticationSection.ChildElements.Item("credentials").Collection
Set addElement = credentialsCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "ContosoUser"
addElement.Properties.Item("password").Value = "P@ssw0rd"
addElement.Properties.Item("enabled").Value = True
credentialsCollection.AddElement(addElement)
adminManager.CommitChanges()
Les exemples de code suivants vérifient si un élément <scope>
a déjà été ajouté à l’élément <authorizationRules>
pour le site web par défaut ; sinon, un élément <scope>
est ajouté à l’élément <authorizationRules>
. Ensuite, un élément <add>
est ajouté à l’élément <scope>
qui autorise un compte d’utilisateur nommé ContosoUser.
AppCmd.exe
Remarque
Vous ne pouvez pas configurer les paramètres <system.webServer/management/authorization>
à l’aide d’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 authorizationRulesCollection = authorizationSection.GetCollection("authorizationRules");
ConfigurationElement scopeElement = FindElement(authorizationRulesCollection, "scope", "path", @"/Default Web Site");
if (scopeElement == null)
{
scopeElement = authorizationRulesCollection.CreateElement("scope");
scopeElement["path"] = @"/Default Web Site";
authorizationRulesCollection.Add(scopeElement);
}
ConfigurationElementCollection scopeCollection = scopeElement.GetCollection();
ConfigurationElement addElement = scopeCollection.CreateElement("add");
addElement["name"] = @"ContosoUser";
scopeCollection.Add(addElement);
serverManager.CommitChanges();
}
}
private static ConfigurationElement FindElement(ConfigurationElementCollection collection, string elementTagName, params string[] keyValues)
{
foreach (ConfigurationElement element in collection)
{
if (String.Equals(element.ElementTagName, elementTagName, StringComparison.OrdinalIgnoreCase))
{
bool matches = true;
for (int i = 0; i < keyValues.Length; i += 2)
{
object o = element.GetAttributeValue(keyValues[i]);
string value = null;
if (o != null)
{
value = o.ToString();
}
if (!String.Equals(value, keyValues[i + 1], StringComparison.OrdinalIgnoreCase))
{
matches = false;
break;
}
}
if (matches)
{
return element;
}
}
}
return null;
}
}
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 authorizationRulesCollection As ConfigurationElementCollection = authorizationSection.GetCollection("authorizationRules")
Dim scopeElement As ConfigurationElement = FindElement(authorizationRulesCollection, "scope", "path", "/Default Web Site")
If (scopeElement Is Nothing) Then
scopeElement = authorizationRulesCollection.CreateElement("scope")
scopeElement("path") = "/Default Web Site"
authorizationRulesCollection.Add(scopeElement)
End If
Dim scopeCollection As ConfigurationElementCollection = scopeElement.GetCollection
Dim addElement As ConfigurationElement = scopeCollection.CreateElement("add")
addElement("name") = "ContosoUser"
scopeCollection.Add(addElement)
serverManager.CommitChanges()
End Sub
Private Function FindElement(ByVal collection As ConfigurationElementCollection, ByVal elementTagName As String, ByVal ParamArray keyValues() As String) As ConfigurationElement
For Each element As ConfigurationElement In collection
If String.Equals(element.ElementTagName, elementTagName, StringComparison.OrdinalIgnoreCase) Then
Dim matches As Boolean = True
Dim i As Integer
For i = 0 To keyValues.Length - 1 Step 2
Dim o As Object = element.GetAttributeValue(keyValues(i))
Dim value As String = Nothing
If (Not (o) Is Nothing) Then
value = o.ToString
End If
If Not String.Equals(value, keyValues((i + 1)), StringComparison.OrdinalIgnoreCase) Then
matches = False
Exit For
End If
Next
If matches Then
Return element
End If
End If
Next
Return Nothing
End Function
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 authorizationRulesCollection = authorizationSection.ChildElements.Item("authorizationRules").Collection;
var scopeElementPos = FindElement(authorizationRulesCollection, "scope", ["path", "/Default Web Site"]);
if (scopeElementPos == -1)
{
var scopeElement = authorizationRulesCollection.CreateNewElement("scope");
scopeElement.Properties.Item("path").Value = "/Default Web Site";
authorizationRulesCollection.AddElement(scopeElement);
}
else
{
var scopeElement = authorizationRulesCollection.Item(scopeElementPos);
}
var scopeCollection = scopeElement.Collection;
var addElement = scopeCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "ContosoUser";
scopeCollection.AddElement(addElement);
adminManager.CommitChanges();
function FindElement(collection, elementTagName, valuesToMatch) {
for (var i = 0; i < collection.Count; i++) {
var element = collection.Item(i);
if (element.Name == elementTagName) {
var matches = true;
for (var iVal = 0; iVal < valuesToMatch.length; iVal += 2) {
var property = element.GetPropertyByName(valuesToMatch[iVal]);
var value = property.Value;
if (value != null) {
value = value.toString();
}
if (value != valuesToMatch[iVal + 1]) {
matches = false;
break;
}
}
if (matches) {
return i;
}
}
}
return -1;
}
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 authorizationRulesCollection = authorizationSection.ChildElements.Item("authorizationRules").Collection
scopeElementPos = FindElement(authorizationRulesCollection, "scope", Array("path", "/Default Web Site"))
If scopeElementPos = -1 Then
Set scopeElement = authorizationRulesCollection.CreateNewElement("scope")
scopeElement.Properties.Item("path").Value = "/Default Web Site"
authorizationRulesCollection.AddElement(scopeElement)
Else
Set scopeElement = authorizationRulesCollection.Item(scopeElementPos)
End If
Set scopeCollection = scopeElement.Collection
Set addElement = scopeCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "ContosoUser"
scopeCollection.AddElement(addElement)
adminManager.CommitChanges()
Function FindElement(collection, elementTagName, valuesToMatch)
For i = 0 To CInt(collection.Count) - 1
Set element = collection.Item(i)
If element.Name = elementTagName Then
matches = True
For iVal = 0 To UBound(valuesToMatch) Step 2
Set property = element.GetPropertyByName(valuesToMatch(iVal))
value = property.Value
If Not IsNull(value) Then
value = CStr(value)
End If
If Not value = CStr(valuesToMatch(iVal + 1)) Then
matches = False
Exit For
End If
Next
If matches Then
Exit For
End If
End If
Next
If matches Then
FindElement = i
Else
FindElement = -1
End If
End Function