2010-06-10 7 views
5

Quiero construir una página para los usuarios finales para visitar (en nuestra red MPLS) y que muestran la siguiente información con respecto a ellos:display de información del ordenador en una página ASP.NET

  • Nombre del equipo
  • OS
  • espacio en disco
  • memoria
  • dirección IP
  • activo Nombre directorio de usuario
  • contraseña de tiempo de espera (como se define por la Política Global)

Tal vez algunas otras cosas como Trend Micro Office versión actual frente a su versión, número de actualizaciones necesarias MS (utilizamos WSUS), y algunas otras cosas en el futuro.

Mi pregunta es ¿cómo sacaré esta información del usuario cuando visite la página? ¿Cuál es la función adecuada para esto? ¿Alguien tiene ejemplos que ellos deseen compartir para que yo los pueda aprender si es posible?

+0

En una nota lateral, para aquellos con altas repeticiones, ¿cómo se informe un comentario borrado mío que no me borro? Ver a continuación: http: // stackoverflow.com/questions/3011090/display-computer-info-on-an-asp-net-page/3011105 # 3011105 –

Respuesta

0

No puede hacer esto sin escribir un complemento de navegador o un applet de Java.

La información no está disponible a través de javascript, y no está en los encabezados enviados por el navegador. Esto es por diseño, por razones de seguridad.

Editar Esta respuesta solo se aplica a páginas públicas; Veo en comentarios posteriores que será intranet solamente.

+0

Esto se encuentra dentro de una red cerrada, presumiblemente por IP, se puede acceder a toda o parte de esta información, ya que podría ser desafiante para las credenciales NTLM también. –

+0

¿Conoces algún buen ejemplo del que pueda aprender para esto? – Gene

1

No podrá mostrar todo esto con C#. C# es un lenguaje del lado del servidor y, por lo tanto, solo tiene acceso a esa información en relación con el servidor en el que se está alojado. Es posible que pueda acceder a esta información desde un applet Java que se ejecuta en la página en el navegador del usuario, pero no estoy seguro. Por lo general, hay restricciones de seguridad involucradas.

+1

Tenía la esperanza de mantenerme alejado de Java si fuera posible. – Gene

+1

Sí ... seguro no necesitas Java cuando tienes asp.net con C#. ASP.NET te da la solución para esto. –

+1

@jdk, ASP.NET revela información sobre la computadora del usuario si es necesario .. –

1

Si permite que su página web para recopilar toda esta información sobre sus usuarios, lo que es cierto para detener otra página web de hacer lo mismo?

+0

Lo que puede hacer en una red ** interna **, desafiante para las credenciales de NTLM, por ejemplo, sería muy diferente a cualquier otra página web. No hay una sola fuente de información para esto, pero todo es posible. –

+0

@Downvoter: ¿te importa intentar usar palabras? -2 no ayuda a los lectores posteriores a saber qué pasa con lo que escribí. –

+0

No es mi voto negativo, pero no está claro cómo se relaciona su respuesta con la pregunta. (* Yo * sé a qué te refieres, pero aún así.) – egrunin

0

¿Solo está en una Intranet? Puede utilizar la dirección IP de las computadoras cliente (según lo informado por el Request.UserHostAddress) y luego consultar su controlador de dominio para obtener la información (a través de la clase DomainController y las colecciones/métodos que expone).

La mayor parte de la información que está buscando estará disponible a través del Controlador de dominio, y algunos de los otros se pueden recuperar utilizando el control remoto performance counters (por ejemplo, puede consultar el espacio libre en disco utilizando LogicalDisk \% Free Space mostrador).

+0

Sí. Esto solo estará disponible para aquellos que estén conectados (en la oficina o VPN) a la red. Entonces, no cualquiera puede acceder a él. – Gene

+0

¿podría darnos algún código de muestra? Mirando su enlace para la clase DomainController, no veo cómo obtener esta información. –

Cuestiones relacionadas