Bonsoir à tous.
Je sais que le sujet à été maintes fois débattus, mais je pose la question parceque je n'ai pas trouvé de réponse précise... Alors si quelqu'un à eu le cas...
J'ai créé un site en asp.net 2, qui fonctionne aussi bien en déboguage qu'en localhost avec mon serveur IIS (je suis administrateur sur mon pc à domicile, donc pas ce genre de soucis).
Dans le contexte professionnel, elle est hébergée sur un serveur IIS 6 qui tourne sous windows serveur 2003. Nous utilisons uniquement une authentification windows par domaine\utilisateur (pas de connexions anonymes)
Je ne suis pas administrateur du serveur. J'ai royalement le droit avec Frontpage 2002 d'écrire dans les dossiers déja créés.
L'administrateur n'en sait pas très long sur IIS (j'ai du lui expliquer comment installer .net 2 et faire le regiis!)
Pour déployer mon application, on m'a confié les identifiants nécessaires à opérer la publication à partir de visual studio. Ce dernier m'a donc créé le dossier contenant l'application que je vais appeller Z...
Le site s'appelle X et est accessible à tous les utilisateurs authentifiés. Il contient un "Sous site" Y accessible en lecture seule à un groupe d'utilisateurs, qui lui même contient le répertoire Z de mon application.
Moi, je le rappelle j'ai les droits en écriture sur les 3.
1) Quand je définis identity impersonate à false je ne peux pas accéder en écriture à ma base.
2) quand je définis identity impersonate à true, là pas de problème, je peux y accéder en écriture.
3) aucun utilisateur n'y a accès en écriture avec ou sans l'emprunt d'identité simple (sans identifiant ni mot de passe)
C'est donc bien un problème de définition d'autorisations...
Si je ne me trompe pas, en principe, avec identity impersonate défini à false, si les connexions anonymes sont désactivées, le processus ne s'execute pas dans le contexte de l'utilisateur, mais dans celui de "NETWORK SERVICE" (et oui, en plus la version de windows Server 2003 est en anglais!)
Donc en principe, il suffit d'accorder l'autorisation de lecture sur le répertoire de mon application à NETWORK SERVICE si je paramètre <identity impersonate="false"/> dans mon web.config ?
Par contre si je paramètre <identity impersonate="true"/>, il faut que je demande à ce que le groupe d'utilisateurs aie les autorisations en écriture...sans me soucier du compte NETWORK SERVICE.
C'est ce que j'ai compris de ceci:http://msdn.microsoft.com/fr-fr/library/aa480475.aspx
Mais il va falloir que je l'explique, au téléphone à la personne qui remplace "l'administrateur" (parti se faire bronzer) et qui va me dire "koiketudis komenkonfé" donc je voudrais être sur d'avoir bien compris
Autre question, dois-je, et puis-je faire créer un pool d'application pour mon application, en lui octroyant des droits d'écriture, plutôt qu'utiliser le compte Network service par défaut?
C'est quand même plus simple quand tu leur grave un cd de déploiement et que tu laisse les gens se débrouiller avec![]()
Partager