2009-02-15 8 views
16

De quelle manière les touches machine sont-elles utiles dans asp.net? Je pense que ce qui suit est correct mais je pensais qu'il pourrait y en avoir plus.Utilise pour MachineKey dans ASP.NET

  1. Plusieurs applications peuvent utiliser le même cookie
  2. Plusieurs serveurs peuvent fonctionner avec le même état d'affichage
+0

@Ben trouvé cette question tout en cherchant une autre information, a ajouté quelques informations manquantes dans une réponse. – eglasius

Répondre

20

MachineKey est utilisé pour:

  • cryptage ViewState et validation
  • formulaires d'authentification (ou l'authentification fédérée) utilise cette clé pour la signature du ticket d'authentification

Avoir une application Web installé sur plusieurs Les serveurs requièrent la même clé machine configurée sur chacun d'entre eux pour que l'équilibrage de charge fonctionne.

Pour tous les détails, s'il vous plaît se référer à: MSDN How To: Configure MachineKey in ASP.NET 2.0

-3

chiffrement - très commun.

+0

Les valeurs dans les cookies et viewstate sont cryptées sur la base de MachineKey. Pourriez-vous dire quoi d'autre est crypté? – BenMaddox

+0

f.e. les mots de passe du fournisseur d'appartenance peuvent être cryptés à l'aide de la clé machine – mikus

+1

@mikus: Ce qui est une mauvaise idée. Hacher avec un sel unique par utilisateur devrait être utilisé à la place. –

17

clé de la machine est également utilisée pour crypter/décrypter les paramètres de webresources.axd.

Même sur un seul serveur, la clé de l'ordinateur doit être configurée, car tout recyclage du domaine de l'application générera une nouvelle clé lorsqu'il est défini sur auto. Cela provoque la publication suivante juste pour les pages rendues avant le recyclage, pour provoquer une erreur de validation viewstate et également des problèmes avec les ressources pendant ce moment.

Questions connexes