¿Cómo prohibir que un usuario permanentemente use mi sitio web?

Intento bloquear el uso permanente de mi sitio web de la PC de un usuario. Hasta ahora lo que hice fue prohibir la dirección IP y configurar una cookie que automáticamente prohibirá la dirección IP, si cambia. Sin embargo, algunos usuarios difíciles aún están borrando la cookie y reiniciando su enrutador, para que puedan escribir comentarios dañinos en mi sitio web. ¿Hay alguna otra forma de prohibir a un usuario, que no sea la prohibición de IP y las cookies? Leí esta pregunta: https://stackoverflow.com/questions/3159160/how-to-definitively-ban-a-user-from-my-website-or-almost, pero no es lo que estoy buscando.

Podría utilizar evercookie , que es mucho más difícil de eliminar, pero identificar las PC individuales con certeza no es realmente posible, y eso es algo muy bueno porque sería el final de la privacidad.

No, no hay. Cualquier método que pongas en su lugar se puede solucionar. Puede identificar a un usuario anterior por:

  • Dirección IP: que cambia automáticamente y se puede cambiar manualmente con algo como Tor
  • Cookie – que se puede eliminar fácilmente, como dijiste anteriormente
  • Detalles de inicio de sesión: lo que requeriría que bloquee los comentarios para usuarios no registrados, y los usuarios bloqueados podrían registrarse con nuevos detalles de todos modos. Puede requerir cuentas de aprobación previa.

Tenga en cuenta que esto es algo muy difícil de hacer. Incluso los sitios más grandes luchan con esto: StackOverflow incluido. En última instancia, es una solución de compromiso entre facilitar a los buenos usuarios y difícil para los usuarios no deseados: usted, como propietario del sitio, debe decidir dónde se encuentra la experiencia óptima.

Otra opción es pagar la moderación de los comentarios con algo como Mechanical Turk o Freelancer.com.

Obviamente, el 100% de autenticación es imposible, además de cualquier otra cosa, alguien podría ir a un cibercafé o usar la computadora de un amigo. Pero podría intentar hacer algunos cambios en su sitio si tiene un gran problema con esto:

  • Puede hacer que los usuarios se registren para publicar, e incluso llegar tan lejos como para que los comentarios de los usuarios nuevos no aparezcan hasta que sean aprobados, por usted o por otros usuarios de confianza.
  • Puedes probar hellbanning, lo que significa que marcas a un usuario como hellbanned, todavía pueden iniciar sesión y publicar, etc. pero sus comentarios solo se muestran a nadie más.
  • Puede intentar escanear automáticamente las publicaciones para determinados términos ofensivos (o lo que sea relevante en este caso) y luego eliminarlos automáticamente o mantenerlos hasta que se aprueben manualmente.

El spam intencional o de otro tipo es un problema difícil y cualquiera que lo resuelva completamente será muy rico.

Una idea, a menudo vista en sistemas como phpBB, es un enfoque de rol. Usted asigna diferentes habilidades a usuarios invitados o visitantes, de usuarios registrados, de usuarios registrados de confianza. Un esquema básico para esto sería así.

  • Huésped
    1. Requiere CAPTCHA
    2. Requiere aprobación del moderador
  • Usuarios Registrados
    1. Requiere aprobación del moderador
  • Usuarios registrados de confianza
    1. Puede publicar comentarios libremente

Su CMS afecta la forma en que esto se configuraría. El más simple (suponiendo que no sea compatible con esto) sería almacenar unos pocos bits adicionales en la base de datos que indica el rol y verificarlo al publicar.

Simplemente obtenga la región de bastardo con funciones GEOIP y establezca alguna restricción para esta región (por ejemplo, premoderación / captcha / etc.).

También puede usar “protección” de otros servicios, que es más poderoso. Por ejemplo: conecte las cuentas de su sitio con facebook acc y permita comentarios solo después de obtener facebook_id. Es bastante fácil prohibir al usuario por facebook_id y hard + slow para que bastardo cree cuentas para cada una de tus prohibiciones;)