2013-02-01 19 views
44

Mam nową stację roboczą Win7 i staram się zainstalować ScrewTurn Wiki na maszynie. Moja instalacja STW używa opcji systemu plików do przechowywania danych i dlatego muszę nadać uprawnienia do zapisu w procesie roboczym ASP.NET w folderze, w którym jest zainstalowana witryna.W jaki sposób mogę nadać uprawnienie ASP.NET do zapisu w folderze w systemie Windows 7?

JEDNAK, nie mogę wydawać się być może wymyślić nazwę procesu roboczego w Win7, aby dodać go do uprawnień do folderu. W XP był to ASPNET_WP, jeśli dobrze pamiętam, ale to nie jest jego nazwa w Win7.

Czy ktoś może mi powiedzieć?

Edytowane dodać:

W odpowiedzi na @Dragan_Radivojevic, oto co pula aplikacji w pytaniu wygląda (o nazwie ScrewTurnWiki):

IIS7 Application Pools

Tożsamość "ApplicationPoolIdentity"

+0

Możliwa duplikat [uprawnieniami folderu IIS7 dla aplikacji internetowych] (https://stackoverflow.com/questions/2532079/iis7-folder-permissions-for-web-application) – KyleMit

Odpowiedz

108

Podawanie uprawnień do zapisu dla wszystkich grup IIS_USRS jest złym pomysłem z punktu widzenia bezpieczeństwa. Nie musisz tego robić i możesz przejść z udzielaniem uprawnień tylko do użytkownika systemu, który uruchamia pulę aplikacji.

Jeśli używasz II7 (i domyślam się, że tak) wykonaj następujące czynności.

  1. Otwarte IIS7
  2. Wybierz WWW, dla których trzeba zmodyfikować uprawnienia
  3. Przejdź do ustawień podstawowych i zobaczyć, które aplikacja basen używasz.
  4. Idź do pul aplikacji i znaleźć pulę aplikacji z nr 3
  5. konto systemowe Zobacz zajętych na prowadzenie tej puli aplikacji (kolumnę tożsamości)
  6. Przejdź do folderu przechowywania w IIS, zaznacz go i kliknij Edytuj uprawnienia (pod Operacje podmenu po prawej)
  7. Otwórz zakładkę bezpieczeństwo i dodaj potrzebne uprawnienia tylko dla użytkownika, który zidentyfikowano w # 3

Uwaga nr 1: jeśli widzisz ApplicationPoolIdentity w # 3 trzeba odwoływać się do tego użytkownika systemu podobnego to IIS AppPool {nazwa_portapl}. Na przykład IIS AppPool \ DefaultAppPool

Uwaga # 2: podczas dodawania tego użytkownika upewnij się, że ustawiłeś prawidłowe lokalizacje w oknie dialogowym Wybierz użytkowników lub grupy. Należy ustawić to na komputerze lokalnym, ponieważ jest to konto lokalne.

+3

Wygląda dobrze, ale dane Tożsamość nie zostanie rozpoznane przez system jako użytkownik, a wyszukiwanie (za pomocą przycisku Zaawansowane) także go nie odnajduje. Pracuję jednak z moją stacją roboczą, a nie serwerem. Jestem za dwiema zaporami ogniowymi i nie sądzę, że IIS_IUSRS jest wszystkim, co naświetlone. – Cyberherbalist

+0

Spróbuj wyszukać użytkownika takiego, jaki pokazałem powyżej: "Pakiet aplikacji IIS {nazwa_pliku aplikacji} Na przykład IIS AppPool \ DefaultAppPool" –

+0

Brak powodzenia; Nie mogłem znaleźć takiego użytkownika. Czy ma to znaczenie, jeśli jest to 64-bitowa stacja robocza z systemem Windows 7? – Cyberherbalist

13

Moje natychmiastowe rozwiązanie (ponieważ nie mogłem znaleźć procesu roboczego ASP.NET) było nadanie uprawnienia do zapisu (to jest modyfikacja) do IIS_IUSRS. To zadziałało. Przypominam sobie, że w WinXP musiałem specjalnie nadać temu procesowi uprawnienia do zapisu w ASP.NET, aby to osiągnąć. Może moja pamięć jest uszkodzona, ale tak czy inaczej ...

@DraganRadivojevic napisał, że uważał to za niebezpieczne z punktu widzenia bezpieczeństwa. Nie zgadzam się, ale ponieważ to była moja stacja robocza, a nie serwer sieciowy, wydawało się to stosunkowo bezpieczne. W każdym razie jego odpowiedź jest lepsza i jest to, na co w końcu zdecydowałem się po ściganiu ścieżki błędu, ponieważ nie określiłem prawidłowej domeny dla użytkownika AppPool.

28

Wiem, że jest to stary wątek, ale aby dalej rozwinąć tutaj odpowiedź, domyślnie IIS 7.5 tworzy konta tożsamości puli aplikacji, aby uruchomić proces roboczy w ramach. Podczas dodawania uprawnień do plików nie można wyszukiwać takich kont, jak zwykłe konta użytkowników. Aby dodać je do listy ACL uprawnień NTFS, możesz wpisać całą nazwę tożsamości puli aplikacji i będzie działać.

To tylko niewielka różnica w sposobie, w jaki obsługiwane są konta tożsamości puli aplikacji, ponieważ są uważane za konta wirtualne.

Również nazwa użytkownika tożsamości puli aplikacji to "IIS AppPool \ nazwa puli aplikacji", więc jeśli była to pula aplikacji DefaultAppPool, konto użytkownika byłoby "IIS AppPool \ DefaultAppPool".

Można to zobaczyć po otwarciu zarządzania komputerem i przejrzeniu członków lokalnej grupy IIS_IUSRS. Identyfikator SID dołączony do ich końca nie jest potrzebny przy dodawaniu konta do listy ACL uprawnień NTFS.

nadzieję, że pomoże

Powiązane problemy