Étrange comportement de l'Authentification IIS Windows
J'ai un ASP.NET 3.5 service web (ancienne école de SAVON, pas de la WCF) fonctionnant sur les deux serveurs à l'identique dans IIS 6.0. L'Authentification/contrôle d'Accès est défini comme suit:
- Activer L'Accès Anonyme = False
- L'authentification intégrée de Windows = True
- Authentification Digest pour Windows serveurs de domaine = False
- L'authentification de base = False
- .NET Passport authentification = False
Dans l'une des méthodes web, j'ai besoin d'obtenir l'Identité de l'utilisateur demandeur et de valider que c'est dans un certain groupe Active Directory. Ainsi, la première ligne de code dans la méthode web est: est-ce
var requestUser = HttpContext.Current.Request.LogonUserIdentity.Name;
Pour une raison quelconque, les résultats sont différents entre les deux serveurs. Serveur1 fonctionne comme prévu, la production de domain\UserId
. Cependant, Serveur2 produit Server2\IUSR_SERVER2
. Quelqu'un at-il vécu cela avant? Je n'ai trouver cette question, mais je suis sûr que ça ne s'applique pas ici en tant que client et les deux serveurs sont tous dans le même domaine.
Informations Supplémentaires
Basé sur Heinzi de réponse, j'ai ajouté ce qui suit à la <system.web>
section à la fois sur internet.les fichiers de configuration:
<authorization>
<deny users="?" />
<allow users="*" />
</authorization>
Maintenant, Serveur1 se comporte de la même, comme dans, il se comporte comme je le veux. Cependant, Serveur2 jette un 401.2: erreur non autorisée:
Erreur de serveur dans l'Application'/'.
L'accès est refusé.
Description: Une erreur s'est produite lors de l'accès aux ressources nécessaires pour servir cette demande. Le serveur peut ne pas être configuré pour accéder à l'URL demandée.
Message d'erreur 401.2.: Non autorisé: Connexion a échoué en raison de la configuration du serveur. Vérifiez que vous disposez de l'autorisation d'afficher ce répertoire ou cette page basée sur les informations d'identification que vous avez fournies et les méthodes d'authentification activée sur le serveur Web. Communiquer avec le serveur Web de l'administrateur pour obtenir de l'aide.
Informations De Version: Microsoft .NET Framework Version:2.0.50727.3603; ASP.NET Version:2.0.50727.3053
Vous devez vous connecter pour publier un commentaire.
J'ai été la création d'un nouveau MVC 4 ASP.NET application web et a couru dans exactement la même erreur que toi (Erreur 401.2) quand j'ai essayé de construire mon projet pour la première fois.
J'ai changé les options du Gestionnaire des services IIS sur ma machine de développement pour désactiver l'authentification anonyme et activer l'authentification windows, mais j'étais encore en train de le 401.2 erreur.
J'ai fait un peu de recherches et découvert que je pouvais changer les propriétés de mon projet et de résoudre cette erreur.
J'espère que cela aide d'autres personnes si cela ne résout pas votre problème spécifique. Aussi longtemps que vous avez les mêmes paramètres sur votre Serveur Web, il devrait fonctionner comme prévu.
Dans le web.config sur Server2, avez-vous: authentication mode="Windows"?
Depuis
IUSR_*
est la valeur par défaut utilisateur anonyme et anonyme d'accès est désactivé dans IIS, il semble que l'accès anonyme est activé dans votre site web.config. Assurez-vous que leauthorization
section de votre site web.config ressemble à ceci:authorization
section. J'ai ajouté exactement ce que vous avez posté à la fois. Maintenant, Serveur1 se comporte de la même (correctement), et Server2 jette un 401.2 non autorisée d'exception. Je vais mettre à jour le post original avec cette information.J'ai eu le même problème avec IIS7 sur un serveur virtuel, ma connexion était diriger vers un dossier appelé "contenu". Dans mon web config il y avait une section "emplacement" contenant les Formulaires authenthication paramètres. Cependant j'ai été la mise en place de l'authentification Windows, de sorte que lorsque IIS frappé le contenu de mon dossier, il ne savait pas ce qui l'authentification à utiliser, donc renvoyé l'erreur. Après la suppression de ce à partir de la config il a bien fonctionné:
Grâce
Malheureusement, je n'ai jamais eu à la racine de ce problème. On finit par se déplacer vers de nouveaux serveurs et avec une nouvelle configuration d'IIS sur deux, ce problème a disparu. Je soupçonne que cela a peut-être quelque chose à voir avec la façon dont les cartes ont été mis en place sur le serveur, que c'était un serveur virtuel avec plusieurs cartes réseau. Mais je ne sais pas pour sûr. Merci encore à Heinzi et consultutah pour leur aide.