web-dev-qa-db-fra.com

ASP.Net sur quel compte utilisateur exécutant le service Web IIS 7?

Je souhaite savoir quel compte exécute mon service Web/application afin de pouvoir attribuer l'accès en lecture/écriture à ce compte. J'ai effectué des recherches et vu la plupart des sources mentionner à propos d'un compte ASPNET, mais sur mon serveur 2008, il n'y a pas de compte nommé ASPNET. Certaines sources disent qu'ASPNET est remplacé par NETWORK SERVICE?

De plus, puis-je affecter un autre compte d'utilisateur pour exécuter le service? Et comment faire ça?

Merci,

41
Leo

Examinez l'identité du pool d'applications qui exécute votre application. Par défaut, ce sera le compte de service réseau, mais vous pouvez le changer.

Au moins, voici comment cela fonctionne sur le serveur 2003. Je ne sais pas si certains détails ont changé pour le serveur 2008.

31
Joe

Server 2008

Démarrez le Gestionnaire de tâches Recherchez le processus w3wp.exe (description du processus de travail IIS) Consultez la colonne Nom d'utilisateur pour rechercher le processus exécuté par IIS.

Dans l'interface graphique IIS, vous pouvez configurer votre pool d'applications pour qu'il s'exécute en tant qu'utilisateur spécifique: Pool d'applications Default Paramètres avancés Identity

Voici les informations de Microsoft sur la configuration des identifications de pool d'applications:

http://learn.iis.net/page.aspx/624/application-pool-identities/

50
MLH

Vous recherchez probablement le compte IIS_IUSRS. 

8
Glade Mellor

J'ai eu énormément de problèmes avec cela, puis j'ai trouvé une excellente solution:

Créez un fichier dans un éditeur de texte appelé whoami.php avec le code ci-dessous en tant que contenu, enregistrez-le et chargez-le sur public_html (ou le nom de la racine de votre répertoire de serveur Web). Il devrait générer une chaîne utile que vous pouvez utiliser pour localiser l’utilisateur sous lequel le serveur Web est exécuté. Mon résultat était "php s’exécute en tant qu’utilisateur: nt autorité\iusr", ce qui m’a permis de rechercher les autorisations nécessaires utilisateur "IUSR".

<?php
  // outputs the username that owns the running php/httpd process
  // (on a system with the "whoami" executable in the path)
  echo 'php is running as user: ' . exec('whoami');
?>
2
DrCord

Vous devez trouver le bon utilisateur qui doit utiliser le dossier temporaire . Sur mon ordinateur, je suis le lien ci-dessus et le dossier spécial C:\inetpub, que je utilise pour exécuter ses services Web . Je vérifie ce que les utilisateurs pourraient utiliser ce dossier et trouver quelque chose comme ceci: Computername\iis_isusrs

Le problème principal survient lorsque vous essayez de l'ajouter à tous les permis du dossier temporaire J'allais dans les propriétés, l'onglet Sécurité, le bouton Modifier, le bouton Ajouter un utilisateur Je mettais alors Iis_isusrs.

et bouton "vérifier les noms"

Il ne trouve rien La raison en est que dans mon cas, il semble (windows 2008 r2 iis 7) sur l'emplacement pdgs.localVous devez aller au formulaire "Sélectionner des utilisateurs ou des groupes", cliquer sur le bouton Avancé , Cliquez sur le bouton Emplacements pour afficher une hiérarchie spécifique. 

  • nom de l'ordinateur
  • Répertoire entier
    • pdgs.local

Ainsi, lorsque vous essayez d'ajouter un utilisateur, son nom de recherche sur pdgs.local . Vous devez sélectionner nom_ordinateur et cliquer sur ok, Cliquez sur "Rechercher maintenant".

Recherchez la colonne IIS_IUSRS on Name (RDN), cliquez sur ok. Nous revenons donc au formulaire "Sélectionner des utilisateurs ou des groupes" avec le soulignement nouveau et correct de l'utilisateur.

cliquez sur OK, autorisez un contrôle total, puis cliquez à nouveau sur OK.

C'est tous les gens, J'espère que ça aide,

Jose de Moralzarzal (Madrid)

0
JosefMadrid