formas seguras de evitar el acceso a una aplicación por más de una persona a la vez?

0

Si una aplicación tiene licencia de tal manera que está configurada para un usuario , en una computadora, ¿cómo puedo protegerla?

Incluso si se bloquea en una computadora, ¿cómo podría evitar que otras personas accedan a la computadora de manera remota, de modo que solo un usuario pueda usar la aplicación a la vez?

Tengo curiosidad por saber si hay precauciones de seguridad que se pueden incluir para evitar que las personas accedan a una aplicación más de una vez.

Mis ideas fueron

  1. Estaba pensando en probar las propiedades del sistema para las versiones de servidor de Windows, etc., pero luego me di cuenta de que puede usar el control remoto en cualquier computadora, con una variedad de programas, por lo que está fuera de la ventana.

2.a También estaba pensando en establecer un indicador en mi aplicación que podría enviar / recibir desde el servidor, de modo que la aplicación no se inicie de nuevo si ya la abrió otra persona debido a que ese indicador es verdadero.

¿Es un problema de seguridad si me conecto a mi servidor, con FTP, antes de que la aplicación incluso inicie sesión un usuario?

2.b ¿Ya que el inicio de sesión de los usuarios también podría establecer ese indicador una vez que el usuario inicia sesión, para que no puedan iniciar sesión nuevamente? (Creo que esto debería hacerse independientemente, ya que un usuario solo debería iniciar sesión una vez).

  1. También pensé en intentar encontrar y ver si la aplicación ya se está ejecutando en la máquina (como un proceso o tarea, es decir, lo que se muestra en el "Administrador de tareas").

No estoy seguro de cuál de estas soluciones son viables (tendría que investigar cómo hacer algo de esto), así que tengo curiosidad de que alguien tenga un mejor ejemplo.

Gracias por la información.

    
pregunta XaolingBao 25.05.2016 - 01:29
fuente

1 respuesta

1
  

formas seguras de evitar el acceso a una aplicación por más de una persona a la vez?

No hay una forma segura para evitar que los usuarios ejecuten más de una instancia de su aplicación en sus máquinas si tienen una copia de su aplicación. Si un usuario tiene una copia de su aplicación, siempre puede encontrar formas de subvertir cualquier cheque que realice.

La única forma segura de limitar el acceso de los usuarios a su aplicación es no ejecutar su aplicación en la máquina del usuario. En otras palabras, una aplicación web.

DRM puede hacer un buen trabajo para evitar que los usuarios utilicen una instancia de su aplicación a la vez por motivos de licencia. Pero tratar de ejecutar código de confianza en una máquina que no es de confianza es intrínsecamente inseguro.

DRM es un juego perdido para desarrolladores y usuarios legítimos por igual. El infractor de la licencia siempre encontrará una manera de evitar el DRM y el DRM a menudo encontrará formas de incomodar y alienar a los usuarios legítimos, lo que aumenta los costos de soporte.

  

Estaba pensando en probar las propiedades del sistema para las versiones de servidor de Windows, etc., pero luego me di cuenta de que puede usar el control remoto en cualquier computadora, con una variedad de programas, para que salga por la ventana.

Un usuario ilegítimo siempre puede editar cualquier archivo / configuración / registro en su computadora. No hay nada que puedas hacer para prevenir esto. Son los que tienen privilegios de administrador del sistema, no su aplicación.

  

¿Es un problema de seguridad si me conecto a mi servidor, con FTP, antes de que la aplicación incluso inicie sesión un usuario?

A menos que su aplicación dependa mucho de la conexión de red como parte, no puede confiar en la conexión de red. Si su usuario legítimo no tiene conexión a Internet en su casa, su aplicación tendrá que negarse a ejecutarse (lo que molestará al usuario legítimo), mientras que un usuario ilegítimo simplemente puede impedir que su aplicación acceda a Internet mediante un firewall de aplicación.

  

También pensé en intentar encontrar y ver si la aplicación ya se está ejecutando en la máquina (como un proceso o tarea, es decir, lo que se muestra en el "Administrador de tareas").

Esto no protegería contra la ejecución en máquinas diferentes o la ejecución de su aplicación en una máquina virtual. Por otro lado, los usuarios legítimos pueden necesitar legítimamente la necesidad de ejecutar varias copias de la aplicación, o su aplicación puede quedar bloqueada como un proceso de zombie impenetrable en segundo plano y los usuarios legítimos pueden necesitar reiniciar su sistema para reiniciar su aplicación nuevamente. .

Las restricciones de licencia y DRM solo pueden hacer que las personas honestas sean honestas.

"Mi aplicación realmente no se puede ejecutar como una aplicación web, porque X, Y y Z. Dado que el DRM es inútil, ¿qué puede hacer un desarrollador de software para proteger sus ingresos?"

Si desarrolla una gran aplicación a un precio razonable, las personas querrán pagarla. Realice un simple control de licencia que puede juntar en un par de horas o incluso sin DRM, y termine. Acepte el riesgo de que haya usuarios ilegítimos y utilice medidas legales para atacar a los principales infractores (la elusión de incluso los DRM simples como el control de claves de licencia estúpidas está legalmente protegido en muchos países). Evite los DRM que hacen cosas extrañas, como implantarse en el sector MBR / boot o intentar ocultarse del Administrador del sistema como un rootkit. Es más probable que causen frustraciones a los usuarios legítimos que a los usuarios ilegítimos.

    
respondido por el Lie Ryan 25.05.2016 - 06:12
fuente

Lea otras preguntas en las etiquetas