2011-02-07 14 views
5

Tengo un servicio (normalmente se ejecuta como NetworkService) que recupera información de proceso utilizando StartInfo. Funciona bien.Permisos alternativos para StartInfo

Pero un cliente desea ejecutar el servicio como un usuario restringido. (una solicitud razonable)

De acuerdo con MS docs StartInfo solo puede ser utilizado por un usuario "completamente confiable". ¿Existe una forma alternativa de obtener la mayor parte de la información de StartInfo sin ser "totalmente confiable" o de configurar un usuario restringido que sea "totalmente confiable" con respecto a la información del proceso?

Respuesta

0

Básicamente, todo lo relacionado con procesos requiere plena confianza.
Así que no, no hay forma de obtener información sobre los procesos sin plena confianza.

Uso del Code Access Security Policy Tool para asignar plena confianza

2

Parece que usted está confundiendo dos sistemas de seguridad: seguridad ortogonales seguridad del usuario y el código de acceso de Windows .NET (CAS). Si bien el uso de la clase System.Diagnostics.Process requiere la plena confianza de CAS, no requiere permisos de usuario administrador, y es bastante factible para un usuario no administrador/restringido ejecutar una aplicación de confianza (wrt CAS).

Dicho esto, el sistema operativo también impone límites a lo que los usuarios no administradores pueden hacer con los procesos, en particular los procesos que no se ejecutan en sus propias cuentas. Dependiendo de lo que su código intente hacer con los procesos, puede o no ser factible ejecutar su servicio en una cuenta que no tenga permisos efectivos de administrador.

Cuestiones relacionadas