Est-il possible de définir des variables d'environnement pour les comptes virtuels ApplicationPoolIdentity? La documentation à ce sujet est pratiquement inexistante.
Je voudrais injecter une variable d'environnement uniquement pour ce pool d'applications. Il semble que les gens créent des comptes uniques pour le pool d'applications pour ce faire, mais ce que j'ai lu sur les comptes virtuels implique que je n'aurais pas à le faire, mais n'explique pas du tout comment le faire.
windows
iis
application-pools
Beau Trepp
la source
la source
Réponses:
Oui! (Tant que vous utilisez IIS 7.0+), vous devez définir le
loadUserProfile
paramètre pour l'identité du pool d'applications sur true. L'identité du pool d'applications aura désormais un profil utilisateur sous \ Users \ [nom du pool d'applications]. Vous pouvez ensuite modifier ce profil pour avoir des variables d'environnement personnalisées, etc.IIS 7 Astuce # 3 Vous pouvez maintenant charger le profil utilisateur de l'identité du pool d'applications
EDIT: Je viens de tester cela (dans IIS 10), à cause de votre commentaire, et cela fonctionne vraiment ici.
Testing
True
HKEY_USERS
, (en vérifiantHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist
si leNTUSER.DAT
fichier situé à[...]\Users\Testing\NTUSER.DAT
était chargé, et il l'était, avec SIDS-1-5-82-454248297-962034619-2554273252-202815998-4121577539
)HKU\[SID]\Environments
clé, elle est présente et a des valeursTEMP
etTMP
pointant vers%USERPROFILE%\AppData\Local\Temp
.La raison pour laquelle je devais faire une charge de page est parce que j'oublié de changer le
Start Mode
deOnDemand
pourAlwaysRunning
. Lorsque j'ai créé un autre pool d'applications avecStart Mode
défini surAlwaysRunning
, le profil utilisateur a été créé lorsque j'ai affecté un site Web au pool d'applications et redémarré le site Web.Plus d'informations utiles sur les identités de pool d'applications : Identités de pool d'applications
la source
\Users
?