différence entre http.contexte.de l'utilisateur et du fil.currentprincipal et quand les utiliser?

Je viens récemment d'un problème de l'exécution d'une asp.net application web sous visual studio 2008. Je reçois le message d'erreur "type n'est pas résolu pour les membres...customUserPrincipal'. Suivi des différents groupes de discussion, il semble qu'il y ait un problème avec Visual Studio de du serveur web lorsque vous affectez une entité personnalisée contre le Thread.CurrentPrincipal.

Dans mon code, j'utilise maintenant...

HttpContext.Current.User = myCustomPrincipal
//Thread.CurrentPrincipal = myCustomPrincipal

Je suis heureux que j'ai obtenu l'erreur de la route, mais il pose la question "Quelle est la différence entre ces deux méthodes de configuration principal?". Il y a d'autres stackoverflow questions liées aux différences mais ils ne tombent pas dans les détails de ces deux approches.

Je n'ai trouver un alléchant post qui a été la suivante grandiose commentaire, mais aucune explication pour sauvegarder ses affirmations...

Utilisation HttpConext.Actuel.Utilisateur pour toutes les
web (ASPX/ASMX) des applications.

Utiliser Thread.CurrentPrincipal pour tous
d'autres applications comme des winForms,
la console de service windows et le
des applications.

De vous security/dot.net gourous de jeter un peu de lumière sur ce sujet?

InformationsquelleAutor yamspog | 2010-06-16