web-dev-qa-db-fra.com

Fonctionnement IIS Express sans droits d'administrateur

Je suis passé à iis Express 7.5 avec VS2010 SP1. Dans les notes de publication, il était spécifié qu'express pouvait exécuter SANS autorisations d'administrateur. Lorsque j'essaie de m'exécuter à partir de la ligne de commande (ligne de commande cms PowerShell), je reçois le même message d'erreur "Accès refusé" (illustré ci-dessous) mais je m'exécutais avec IIS Express 7.

Autant que je sache, des droits d'administrateur sont toujours nécessaires. 

Quelqu'un a-t-il pu s'exécuter sans droits d'administrateur?

Le message d'erreur détaillé est:

Failed to call HttpAddUrl with http://MACHINE-NAME:80/
Failed to register URL "http://MACHINE-NAME:80/" for site "WebSiteName" application "/". Error description: Access is denied. (0x80070005)
25
jdiaz

Voir ici pour ce qui nécessite un accès administrateur et ce qui ne fonctionne pas, selon ce que vous faites avec IIS Express: http://learn.iis.net/page.aspx/1003/running-iis -express-without-administrative-privileges/

Des privilèges d'administrateur sont requis pour effectuer les tâches suivantes:

* Use a reserved port such as 80 or 443.
* Serve requests for external traffic.
* Configure a custom SSL certificate.
* Run SSL using a port outside the range of 44300 to 44399. 

Donc, si vous faites l'une des choses ci-dessus, un accès administrateur sera requis.

C'est indépendamment de 7 ou 7.5. 

32
manojlds

Il est également possible d'exécuter IIS Express en tant qu'utilisateur non administrateur sur des ports réservés et de servir les demandes de trafic externe, mais vous devez configurer le service HTTP pour autoriser cette opération . La page technique commandes Netsh pour le protocole de transfert d'hypertexte (HTTP) décrit cette opération en détail pour un ordinateur Windows 7 (ainsi que pour Vista, Server 2008, etc.). Comme vous vous en doutez, vous devez exécuter la commande de configuration en tant qu'administrateur. Voici des exemples de commandes permettant d’ajouter et de supprimer des autorisations:

netsh http add urlacl url=http://YOUR-MACHINE-NAME:80/ user=DOMAINNAME\GroupOrUserName
netsh http delete urlacl url=http://YOUR-MACHINE-NAME:80/

Cela fonctionne pour moi sur Windows 7 et bien que je ne puisse pas le vérifier, je suppose que le Httpcfg.exe: utilitaire de configuration HTTP } peut être utilisé pour autoriser cela sur des versions antérieures de Windows (XP, Server 2003).

39

ouvrir CMD en tant qu'administrateur et exécuter l'instruction ci-dessous

netsh http add iplisten ipaddress = ::

0
suresh kanchamreddy