Według msdn: strona internetowaProcess.Start() pod asp.net?
ASP.NET i kod sterujący serwer wykonuje w kontekście procesu roboczego ASP.NET na serwerze sieci Web. Jeśli używasz metody Start na stronie internetowej ASP.NET lub sterowaniu serwera, nowy proces wykonuje się na serwerze sieci Web z ograniczonymi uprawnieniami. Proces nie rozpoczyna się w tym samym kontekście, co przeglądarka klienta, a nie ma dostępu do pulpitu użytkownika.
Którekonto właśnie jest "ograniczone uprawnienia" ?
Przykład:
- jestem zalogowany do win7 jako
RoyiN
- uwierzytelnianie systemu Windows jest włączona
- personifikacji jest włączona jak
BobK
na web.config (na całym terenie) - Użytkownik
W3WP
użytkownika toUserA
(nie sieć ani ApplicationPoolIdentity).
W języku C# zrobić Process.start("....cmd.exe...")
(zStartinfo
poświadczeń jak: "Martin
", "Password
", "Domain
")
Kto jest wydajny
account
co ostatecznie prowadzicmd.exe
?Do kogo odnosi się "ograniczone zezwolenie"?
Mam nadzieję, że czat pomógł nieco - odpowiedzieć na 2 pytania: "Kto jest kontem, które faktycznie uruchamia program cmd.exe?" => UserA. "Do kogo" ograniczone uprawnienia "w rzeczywistości dotyczy?" => uprawnienia ograniczone dotyczą (zwykle) przypadku użytkownika w3wp będącego tożsamością puli aplikacji, który ma ograniczone prawa. W twoim przypadku "UserA" – JerKimball
@JerKimball zwróć uwagę, że Startinfo _przykładuje ci poświadczenia. –
OK, w takim przypadku nowy proces powinien zostać uruchomiony pod tą samą tożsamością co użytkownik/domena określona w informacji o uruchomieniu procesu. – JerKimball