Partager via


<machineKey>, élément

Configure des clés à utiliser pour le cryptage et décryptage des données de cookie d'authentification par formulaire et des données d'état d'affichage, ainsi que pour la vérification d'état de session out-of-process. Cette section peut être déclarée aux niveaux de l'ordinateur, du site et de l'application, mais pas au niveau du sous-répertoire.

<configuration>
   <system.web>
      <machineKey>

<machineKeyvalidationKey="AutoGenerate|value[,IsolateApps]"            decryptionKey="AutoGenerate|value[,IsolateApps]"            validation="SHA1|MD5|3DES"/>

Attributs requis

Attribut Option Description
validationKey     Spécifie la clé utilisée pour la validation des données cryptées. validationKey s'utilise lorsque enableViewStateMAC est true afin de créer un code de message d'authentification (MAC) qui permet de s'assurer que l'état n'a pas été falsifié. validationKey s'utilise également pour générer des ID spécifiques à l'application, out-of-process afin de garantir que les variables de l'état de session sont isolées entre les sessions.
    AutoGenerate Spécifie que ASP.NET génère une clé aléatoire et la stocke dans l'autorité de sécurité locale (LSA, Local Security Authority). L'option AutoGenerate est la valeur par défaut. Si vous ajoutez le modificateur IsolateApps à la valeur validationKey, ASP.NET génère une clé cryptée unique pour chaque application à l'aide de l'ID d'application de chaque application.
    value Spécifie une clé de validation assignée manuellement. Cette valeur doit être définie manuellement pour permettre une configuration cohérente sur l'ensemble d'un réseau de serveurs Web (batterie de serveurs Web). La clé doit posséder un minimum de 40 caractères (20 octets) et un maximum de 128 caractères (64 octets). Si des clés dont la longueur est inférieure au maximum sont utilisées, elles doivent être créées de façon réellement aléatoire en utilisant par exemple RNGCryptoServiceProvider. La longueur de clé recommandée est de 128 caractères hexadécimaux. Si vous ajoutez le modificateur IsolateApps à la valeur validationKey, ASP.NET génère une clé cryptée unique pour chaque application à l'aide de l'ID d'application de chaque application.
decryptionKey     Spécifie la clé utilisée pour crypter les données. decryptionKey s'utilise pour le cryptage et décryptage de l'authentification par formulaire et pour le cryptage des états d'affichage lorsque validation correspond à 3DES.
    AutoGenerate Spécifie que ASP.NET génère une clé aléatoire et la stocke dans l'autorité de sécurité locale (LSA, Local Security Authority). L'option AutoGenerate est la valeur par défaut. Si vous ajoutez le modificateur IsolateApps à la valeur decryptionKey, ASP.NET génère une clé cryptée unique pour chaque application à l'aide de l'ID d'application de chaque application.
    value Spécifie une clé assignée manuellement. Cette valeur doit être attribuée manuellement à une chaîne de caractères hexadécimaux pour permettre une configuration cohérente sur l'ensemble d'une batterie de serveurs Web. La clé doit avoir une longueur de 16 caractères lors de l'utilisation du cryptage DES et d'une longueur de 48 caractères lors de l'utilisation du cryptage Triple DES. Si des clés dont la longueur est inférieure au maximum sont utilisées, elles doivent être créées de façon réellement aléatoire, en utilisant par exemple RNGCryptoServiceProvider. ASP.NET peut utiliser DES uniquement sur les ordinateurs disposant du cryptage 128 bits. Si vous ajoutez le modificateur IsolateApps à la valeur decryptionKey, ASP.NET génère une clé cryptée unique pour chaque application à l'aide de l'ID d'application de chaque application.
validation     Spécifie le type de cryptage utilisé pour la validation des données.
    SHA1 Spécifie que ASP.NET utilise le cryptage SHA1.
    MD5 Spécifie que ASP.NET utilise le cryptage MD5.
    3DES Spécifie que ASP.NET utilise le cryptage Triple-DES (3DES). Lorsque l'option 3DES est spécifiée, l'authentification par formulaire prend par défaut la valeur SHA1. Lorsque l'attribut validation a la valeur 3DES, la technique de validation des états d'affichage utilise le cryptage 3DES.

Exemple

L'exemple suivant définit la valeur AutoGenerate à validationKey et à decryptionKey. L'option isolateApps est spécifiée pour générer des clés uniques pour chaque application sur le serveur.

<machineKey validationKey="AutoGenerate,IsolateApps" 
            decryptionKey="AutoGenerate,IsolateApps" 
            validation="SHA1"/>

Configuration requise

Contenu dans : <system.web>

Plate-forme Web : IIS 5.0, IIS 5.1, IIS 6.0

Fichier de configuration : Machine.config, Web.config

Gestionnaire de sections de configuration : System.Web.Configuration.MachineKeyConfigHandler

Voir aussi

Configuration ASP.NET | Schéma des paramètres ASP.NET