Bonjour,
Dans mes scripts ASP classic, les FSO.fileExists et FSO.FolderExists retournent "faux" sur des chemin réseau (UNC) pour mes nouveau serveur IIS fraichement installé IIS 8.5 de WS 2012r2 et IIS10 de WS 2016.
Script ASP tout simplement :
<% StFile = "\\serveur\partage\fichier.ext" %>
<%=StFile &" = " & FSO.FileExists(StFile) & "<br>"%>
Lorsque StFile désigne un fichier local, c'est fonctionnel, mais si j'utilise un chemin réseau, j'ai constamment "faux" sur mes nouveau IIS alors que j’obtiens bien VRAI sur mon IIS7.5 de WS2008r2 avec WSUS.
J'ai effectué un "DIR StFile" qui voit bien les fichiers quelques soit les version d'IIS.
Set objWShell = CreateObject("WScript.Shell")
Set objCmd = objWShell.Exec("%ComSpec% /c dir " & StFile)
strPResult = objCmd.StdOut.Readall()
L'activation en "application 32 bits" ne change rien. La configuration du pool par défaut semble équivalente. Les serveurs sont dans le même domaine.
Une solution sans explication
L'authentification anonyme du site est activé et utilise le compte IUSR. Ce compte local n'est pas reconnu par les serveurs distants. En basculant de l'utilisateur spécifique IUSR à "identité du pool d'applications", les fonctions FSO sont de nouveau
opérationnel.
Je ne comprend pas le fonctionnement résultant de ce changement, car dans le pool d'application "DefaultAppPool", l'identité est par défaut sur "ApplicationPoolIdentity".
réflexion sur le compte local caché de IIS "IIS AppPool\DefaultAppPool"
Si vous regardez les droits de sécurité sur votre dossier "wwwroot" vous ne trouverez pas de compte IUSR ou IIS_USRS. Et pourtant, les pages s'affiche sans le message d'erreur d'accès.
Le service W3SVC est exécute en "système local" apparait en "DefaultAppPool" dans le gestionnaire des tâches.,
L'utilisateur "DefaultAppPool" semble être un compte caché local "IIS AppPool\DefaultAppPool" qui n'est pas listé dans les utilisateurs de l'ordinateur, comme c'est le cas pour "AUTORITE NT\Système".
Mais ce compte "DefaultAppPool" étant local à l'ordinateur, cela n'explique pas comment le pool se présente au serveur SMB du réseau.