Jest to ogólnie "zły pomysł". Jeśli jest to serwer publiczny, to jest to naprawdę zły pomysł.
To, co powinieneś zrobić, i w ten sposób podejść do takich problemów, to piaskownica, które musisz wykonać w innym procesie, takim jak usługa Windows, która ma podwyższone prawa.
Następnie hostujemy serwer usług zdalnych w usłudze systemu Windows i komunikujemy się z usługą za pośrednictwem nazwanego potoku lub protokołu TCP/IP (jeśli komputer jest maszyną, a jest to prywatna sieć wewnętrzna).
Aby uzyskać więcej informacji, proszę zobaczyć tę odpowiedź, która wyjechałam do innego użytkownika dotyczące podobnego problemu:
Windows User Account that executes only IIS7 Provisions
Jeszcze lepszym rozwiązaniem byłoby, aby nigdy nie mają bezpośredniej komunikacji między internecie aplikacji i usługi Windows, ale przechodzą przez pośrednika, takiego jak kolejka zadań lub wiadomości. Twoja nisko uprzywilejowana aplikacja umieszcza żądanie wykonania zadania administratora, podniesiona uprzywilejowana usługa odczytuje te zadania z kolejki i wykonuje je.
W obu przypadkach należy upewnić się, że nie przekroczono zakresu odpowiedzialności każdego zadania. tj. upewnij się, że jeśli zadaniem jest utworzenie nowego konta systemu Windows na serwerze, nie zezwalaj temu nowemu kontu na zdobywanie większej liczby uprawnień, niż jest to konieczne.
Może być kilka rzeczy, które możesz zrobić, które są bardziej niebezpieczne. Ale wątpię w to. – SLaks