90 votes

401 Non autorisé : L'accès est refusé en raison d'informations d'identification non valides.

J'utilise IIS Express pour déployer une application MVC4. Ce site web fonctionne parfaitement sur le même ordinateur. Mais dans Lan, il me donne l'erreur 401.

<authentication mode="Forms">
    <forms loginUrl="~/" slidingExpiration="true" timeout="20">
    </forms>
</authentication>

Contrôleur à domicile

[HttpPost]
[AllowAnonymous]        
public ActionResult Index(LoginModel model, string returnUrl)
{
}

Je lance le serveur IIS à partir de l'invite de commande en mode administrateur. IIS répond à la demande avec une erreur 401 .

Un indice ?

259voto

ctc Points 391

Je me rends compte que c'est un vieux message mais j'ai eu la même erreur sur IIS 8.5. J'espère que cela pourra aider une autre personne rencontrant le même problème (je n'ai pas vu mon problème décrit dans d'autres questions portant un titre similaire).

Tout semblait correctement configuré avec l'identité du pool d'applications, mais je continuais à recevoir l'erreur. Après de nombreuses recherches, il existe un paramètre permettant à l'utilisateur anonyme d'utiliser les informations d'identification de l'identité du pool d'applications ou d'un utilisateur spécifique. Pour une raison quelconque, le mien était réglé par défaut sur un utilisateur spécifique. En modifiant le paramètre pour l'identité du pool d'applications, j'ai résolu le problème.

  1. Site Web des sites du gestionnaire IIS
  2. Double-cliquez sur "Authentification".
  3. Sélectionnez Authentification anonyme
  4. Dans le panneau Actions, sélectionnez Modifier
  5. Sélectionnez Application pool Identity et cliquez sur ok

J'espère que cela fera gagner du temps à quelqu'un d'autre !

31voto

sna2stha Points 831

Si vous utilisez IIS 7, procédez comme suit :

  1. Sélectionnez votre site.
  2. Cliquez sur les pages d'erreur.
  3. Modifier les paramètres des fonctions.
  4. Sélectionnez les erreurs détaillées.

13voto

testCoder Points 2546

Assurez-vous que vous avez activé l'authentification anonyme sur iis comme ceci :

enter image description here

12voto

Steve Points 499

Au cas où quelqu'un le chercherait encore, ceci a résolu le problème pour nous :

A tous ceux que cela peut aider, cela m'a sauvé la vie...

J'ai eu du mal à comprendre pourquoi je recevais le message 401 - Unauthorized : L'accès est refusé en raison d'informations d'identification non valides... jusqu'à ce que je fasse ceci...

  1. Ouvrez IIS et sélectionnez le site Web qui cause le problème 401.
  2. Ouvrez la propriété "Authentification" sous l'en-tête "IIS".
  3. Cliquez sur l'élément "Authentification Windows" et cliquez sur "Fournisseurs".
  4. Pour moi, le problème était que Negotiate était supérieur à NTLM. Je suppose qu'il y avait une sorte de poignée de main en coulisses, mais je n'étais jamais vraiment authentifié. J'ai déplacé NTLM en haut de la liste, et BAM, ça a marché.

Voici le lien où cela a été trouvé .

8voto

poorraj Points 143

Je réalise que c'est une vieille question, mais elle est apparue dans mes recherches. J'ai eu un problème similaire pour une application MVC récemment construite, déployée pour la première fois, et le mécanisme d'authentification n'a pas été complètement mis au point.

Dans mon cas, il ne s'agissait pas d'un paramètre IIS, mais d'un contrôleur qui n'a pas été [AllowAnonymous] décoré. J'utilisais un Render.Action/Html.Action dans un Layout.cshtml et l'utilisateur n'était pas authentifié. La mise en page a donc essayé de charger une action authentifiée dans un contexte non authentifié.

Une fois que j'ai mis à jour l'action à AllowAnonymous, le problème a disparu, et c'est ce qui m'a amené à le faire .

J'espère que cela aidera quelqu'un.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X