Emprunter l'identité d'un utilisateur avec un pipeline intégré
C'est une question qui continue de me hanter...
Dans un Intranet local de l'environnement, mais sommes-nous condamnés à l'utilisation "Classique" pipeline de la mode dans notre Pool d'Application si l'on veut utiliser Usurper l'identité de notre les utilisateurs de domaine Windows, ou est-il une nouvelle façon de façon déclarative "exécuter en tant que" (pour ainsi dire)?
Mon objectif est d'utiliser l'Authentification Windows pour les locaux d'applications web sur mon Intranet afin que les utilisateurs peuvent s'authentifier et d'exécuter des applications sous leur compte active directory (principe). Chaque fois que j'essaie ce (en Utilisant le service réseau de l'identité, bien sûr), j'obtiens cette erreur:
Merci! 😉
source d'informationauteur Chiramisu
Vous devez vous connecter pour publier un commentaire.
J'ai écrit une petite application pour afficher les paramètres réseau de l'utilisateur nom d'utilisateur saisi à partir de plusieurs endroits différents tels que
Page.User.Identity.Name
. J'ai également pris des informations sur l'utilisateur de domaine en utilisant un couple de différentes méthodes d'interrogation ActiveDirectory. Tout cela afin de valider les éléments suivants.J'ai trouvé deux principaux modes pour l'exécution de votre application à l'aide de l'Authentification Windows, qui est principalement utilisé dans un environnement Intranet selon mes recherches. Voici la configuration des éléments essentiels de l'configurations:
Mode Classique
Mode Intégré
Maintenant, voici le kicker!!
Si vous souhaitez utiliser le mode Intégré (ce qui est idéal car il donne beaucoup plus de fonctionnalités, et bien, intégration), vous aurez besoin d'avoir permis à la Délégation. Voici un couple doit-lire des articles pour comprendre les bases de la Délégationet, par extension,Dynamique de l'Inscription du SPN. Depuis ce devient de plus en Kerberos et les considérations de sécurité que vous avez probablement soin de se plonger dans, il pourrait être plus facile de simplement s'en tenir avec les Classiques de la mode où tout ce que vous avez à faire est de permettre l'usurpation d'identité et l'appeler un jour; ou bien tricher et de désactiver
validateIntegratedModeConfiguration
. 😛J'espère que cela aide quelqu'un là-bas sur l'interwebz. Cheers! 🙂
Pas, mais "Intégrée" pipeline, il faut manuellement l'identité de la Windows utilisateur Authentifié. Au moins dans IIS8.5.
Pourquoi? Classique usurpation d'identité pause .NET asynchrone caractéristiques. Plus précisément, il est difficile de gérer la WindowsIdentity d'un fil quand il est utilisé par plusieurs utilisateurs en même temps.
Comment? Utiliser un WindowsImpersonationContext par exemple
Problèmes? Parfois, vous devez utiliser la délégation de l'usurpation d'identité.