2017-07-27 2 views
1

Je suis à la poursuite de ce problème depuis un moment maintenant et je ne peux pas aller au fond des choses. J'ai lu les autres solutions ici (https://identityserver4.readthedocs.io et https://github.com/IdentityServer/IdentityServer4.Quickstart.UI) et cela ne fonctionne toujours pas, donc j'ai essayé de réduire cela aux bases absolues. Ce n'est pas le problème auquel je suis confronté, mais le résultat est le même. c'est-à-dire que je ne peux pas obtenir l'authentification Windows pour fonctionner.IdentityServer4 & Authentification Windows

  1. I clone https://github.com/IdentityServer/IdentityServer4.Samples
  2. je modifie Quickstarts/7_JavaScriptClient/src/QuickstartIdentityServer/Quickstart/Account/AccountController.cs pour que WindowsAuthenticationEnabled est true
  3. Je puis goto http://localhost:5000/account/login et tenter d'utiliser le fournisseur externe Windows et je reçois 401.

La seule différence avec cet exemple simple ici, et ce que je vois sur mon système actuel, c'est que je suis mis au défi pour les informations d'identification sur mon site réel.

Débogage du code Je ne vois jamais if(HttpContext.User is WindowsPrincipal) réussir, parce que c'est toujours un ClaimsPrincipal. Est-ce que quelqu'un peut m'expliquer ce que je fais mal?

Répondre

2

L'authentification Windows est-elle activée sur votre site IIS? Cela doit être activé pour que votre WindowsPrincipal soit affecté. Notez que l'authentification Windows fonctionne uniquement lorsque vous exécutez derrière IIS ou IIS Express.

+0

Oui, l'authentification Windows est activée sur IIS. Je l'ai en cours d'exécution Kestrel avec le UseIISIntegration, donc je suppose que IIS agit comme un proxy inverse pour cela. –

+0

IIS ou IIS Express? Activé pour le site ou pour le serveur? Je demande parce que HttpContext.User est WindowsPrincipal fonctionne très bien, c'est donc probablement un problème d'environnement. –

+1

Wow ... J'avais Windows Auth activé pour le site et l'application, mais quand je l'ai activé pour le serveur, tout est né dans la vie. Merci. –