2010-01-07 2 views
1

J'écris une application ASP.net et je travaille avec la fonction WindowsIdentity.GetCurrent(). Je veux savoir comment (ou si c'est possible) changer l'identité de l'application ASP.net. Je souhaite éventuellement l'exécuter en tant que compte associé à l'utilisateur final. Je comprends que je peux le faire avec l'authentification Windows dans IIS, mais l'authentification Windows ne fonctionnera pas avec mon application particulière. Si je peux connecter l'utilisateur par programme avec un nom d'utilisateur et un mot de passe AD, ce sera parfait.Comment puis-je modifier la valeur renvoyée par WindowsIdentity.GetCurrent dans ASP.net?

Comment puis-je définir le WindowsIdentity l'exécution de l'application ASP.net sans utiliser l'authentification Windows dans IIS?

Mise à jour: Cette question est restée inactive depuis longtemps. Je pense que peut-être le cadre ne me permet pas de faire ce que je décris ici. Est-ce que quelqu'un sait avec certitude que c'est interdit ou considéré comme une mauvaise pratique?

Répondre

3

Vous devez utiliser Impersonation

Ou si vous souhaitez mettre en œuvre en utilisant strictement Impersonation code, vérifiez cet exemple:

How to implement impersonation in an ASP.NET application

+0

Impersonation travaille à un point d'effectuer une action comme un certain l'identité, mais il est très lourd d'avoir à emprunter l'identité avec chaque action qui doit être effectuée en tant qu'utilisateur particulier. Avec l'authentification Windows, vous pouvez définir dans web.config et il sera usurpé automatiquement. Je désire avoir cette même fonctionnalité même si je n'utilise pas l'usurpation d'identité. –

+0

Vous ne serez pas en mesure d'accomplir ce que vous demandez sans utiliser une forme d'usurpation d'identité. –

+0

Donc, pour clarifier alors, dites-vous que si je n'utilise pas l'authentification Windows dans IIS, je ne peux pas utiliser le dans le web.config pour emprunter l'identité automatiquement d'un utilisateur connecté par programme? –

Questions connexes