comment gérer le pool d'applications iisexpress sous une identité différente
est-il possible d'exécuter iisexpress application de la piscine sous une identité différente des autres que l'utilisateur actuellement connecté?
Je contournerai ce problème en utilisant la commande "runas" actuellement, mais je voudrais savoir s'il y a quelque chose d'intégré à iisexpress que je peux utiliser.
5 réponses
il semble que cela devrait être possible. Dans le post d'application de votre site IIS Express.fichier de configuration, il y a un <processModel/>
élément défini dans <applicationPoolDefaults>
<applicationPools>
<processModel>
l'élément a des attributs pour userName
et password
.
MSDN:
spécifie que ASP.NET va exécuter le processus worker avec une identité Windows qui est différente de L'identité Windows pour l'identité du processus par défaut. Par défaut, cette attribut est défini à la Machine, et le processus s'exécute sous un compte utilisateur nommé ASPNET qui est créé automatiquement lorsque ASP.NET est installé. Le mot de passe du compte ASPNET est généré cryptographiquement au moment de l'installation. Si des justificatifs d'identité valides sont présentés dans cet attribut et l'attribut mot de passe, le processus est exécuté avec le compte donné.
Ceci devrait vous permettre d'exécuter le site sous différentes informations d'identification de l'utilisateur connecté.
"runas" est seulement la solution. IIS Express ne vont pas respecter processModel paramètres qui sont définis dans applicationhost.fichier de configuration.
Je n'ai pas pu faire fonctionner la solution ci-dessus et je voulais être capable de déboguer via Visual Studio tout en exécutant IIS Express sous différentes références.
- ouvrez l'invite de commande en utilisant "exécuter en tant qu'administrateur" (vous avez besoin de privilèges élevés)
- naviguer dans le répertoire de Visual Studio à l'invite de commande (dans mon cas: "cd C:\Program fichiers (x86)\Microsoft Visual Studio 10.0\Common7\IDE" pour VS2010).
- runas / netonly /user:[domaine]\[nom d'utilisateur] devenv.exe
- ouvrez votre solution à partir de VS et remplissez vos justificatifs D'identité TFS (s'il y a lieu).
vous pouvez maintenant déboguer comme d'habitude sous IISExpress (en supposant que c'est la façon dont vous avez configuré votre projet) sous l'exécution en tant que justificatifs d'identité. C'est génial si vous avez besoin d'utiliser la sécurité intégrée pour les connexions de base de données ou quelque chose de similaire, mais besoin d'utiliser des justificatifs d'identité différents.
je me demande si cela fonctionne vraiment - IIS Express semble exécuter tous les pools d'applications dans le même processus - et ce processus est exécuté dans le contexte de l'utilisateur courant...?
semble que l'option" Run as " pourrait fonctionner, mais cela nous obligerait à lancer IIS Express À partir de la ligne de commande (ou de l'événement de compilation) au lieu de compter sur Visual Studio pour le démarrer. : (