Nous avons récemment mis à niveau vers IIS7 en tant que serveur Web principal et j'ai besoin d'une vue d'ensemble en termes d'autorisations. Auparavant, lorsque j'avais besoin d'écrire dans le système de fichiers, j'aurais donné à l'utilisateur AppPool (service réseau) un accès au répertoire ou au fichier.
Dans IIS7, je vois, par défaut, l'utilisateur AppPool est défini sur ApplicationPoolIdentity
. Ainsi, lorsque je vérifie le gestionnaire de tâches, je vois qu'un compte d'utilisateur appelé «WebSite.com» exécute le processus IIS («Website.com» étant le nom du site Web dans IIS)
Cependant, ce compte d'utilisateur n'existe pas si j'essaie de l'utiliser pour donner des autorisations. Alors, comment puis-je déterminer quel utilisateur doit également accorder les autorisations?
Modifier ================================================= =============================
Voir ci-dessous pour le problème dans la capture d'écran. Notre site Web (www.silverchip.co.uk) fonctionne sous le nom d'utilisateur SilverChip.co.uk. Cependant quand j'ajoute des pemissions, cet utilisateur n'existe pas!
================================= Voir Image AppPool
la source
Réponses:
ApplicationPoolIdentity est en fait la meilleure pratique à utiliser dans IIS7 +. Il s'agit d'un compte non privilégié créé dynamiquement. Pour ajouter la sécurité du système de fichiers pour un pool d'applications particulier, voir «Identités du pool d'applications» d'IIS.net . La version rapide:
Si le pool d'applications est nommé "DefaultAppPool" (remplacez simplement ce texte ci-dessous s'il est nommé différemment)
la source
IIS AppPool\silverchip.co.uk
. Cependant, je n'ai pas essayé les périodes dans les noms de sécurité - vous pouvez le changer en quelque chose sans ponctuation.enable load user profile
pourtrue
dans les paramètres de pool d'applications. Et seulement après ce réglage, j'ai pu exécuter l'application. Veuillez donc mettre à jour vos instructions et ajouter le 9ème point.N'oubliez pas d'utiliser le nom local du serveur, pas le nom de domaine, lors de la résolution du nom
(juste un rappel car cela m'a fait trébucher un peu):
la source
Donner accès à l' IIS AppPool \ YourAppPoolName utilisateur peut être pas assez avec IIS configurations par défaut.
Dans mon cas, j'avais toujours l'erreur HTTP Erreur 401.3 - Non autorisée après l'ajout de l'utilisateur AppPool et elle n'a été corrigée qu'après l'ajout d'autorisations à l' utilisateur IUSR .
Cela est nécessaire car, par défaut, l'accès anonyme se fait à l'aide de l' IUSR . Vous pouvez définir un autre utilisateur spécifique, le pool d'applications ou continuer à utiliser l'IUSR, mais n'oubliez pas de définir les autorisations appropriées.
Crédits à cette réponse: Erreur HTTP 401.3 - Non autorisé
la source
Sur Windows Server 2008 (r2), vous ne pouvez pas attribuer une identité de pool d'applications à un dossier via Propriétés-> Sécurité. Vous pouvez le faire via une invite de commande d'administration en utilisant les éléments suivants:
la source
Partie A: Configuration de votre pool d'applications
Supposons que le pool d'applications est nommé «MyPool» Accédez aux «Paramètres avancés» du pool d'applications à partir du gestionnaire IIS
Faites défiler jusqu'à «Identité». Essayer de modifier la valeur fera apparaître une boîte de dialogue. Sélectionnez «Compte intégré» et sous celui-ci, sélectionnez «ApplicationPoolIdentity».
Quelques lignes sous «Identité», vous devriez trouver «Charger le profil utilisateur». Cette valeur doit être définie sur «True».
Partie B: Configuration de votre site Web
Partie C: Configurer votre dossier
Le dossier en question est C: \ Peu importe
Vous devriez maintenant pouvoir utiliser la navigation sur le site Web
la source
Meilleure réponse de Jon Adams
Voici comment implémenter cela pour les gens de PowerShell
la source
Pour ajouter à la confusion, la boîte de dialogue Autorisations effectives (Explorateur Windows) ne fonctionne pas pour ces connexions. J'ai un site "Umbo4" utilisant l'authentification directe et j'ai regardé les autorisations effectives de l'utilisateur dans le dossier racine du site. Le test Vérifier les noms a résolu le nom «IIS AppPool \ Umbo4», mais les autorisations effectives montrent que l'utilisateur n'avait aucune autorisation sur le dossier (toutes les cases à cocher ne sont pas cochées).
J'ai ensuite exclu cet utilisateur du dossier explicitement, en utilisant l'onglet Sécurité de l'Explorateur. Cela a entraîné l'échec du site avec une erreur HTTP 500.19, comme prévu. Cependant, les autorisations effectives étaient exactement comme auparavant.
la source
J'ai résolu tous mes problèmes asp.net simplement en créant un nouvel utilisateur appelé IUSER avec un mot de passe et en lui ajoutant le service réseau et les groupes d'utilisateurs. Ensuite, créez tous vos sites et applications virtuels définissez l'authentification sur IUSER avec son mot de passe .. définissez un accès de fichier de haut niveau pour inclure IUSER et BAM, il a résolu au moins 3-4 problèmes, y compris celui-ci ..
Dave
la source