Conviértete en administrador

Problema

  1. Los administradores pueden acceder inadvertidamente a partes confidenciales del foro.
  2. Dicho acceso no deseado no se está registrando.
  3. Los administradores pueden pasar por alto una mala configuración debido a sus superpoderes, que ocultan la experiencia normal.

Descripción de la función

En la misma línea que la función de suplantación de identidad de usuarios en Impersonating a user, un usuario con privilegios de administrador debería poder “convertirse en administrador” para realizar tareas administrativas solo cuando sea necesario.

A diferencia de la función de suplantación de identidad, esta función no requeriría cerrar sesión para recuperar los privilegios de usuario normales.

Esta función:

  1. Permitiría a los administradores navegar por el sitio como un usuario normal, compartiendo la experiencia diaria de otros usuarios.
  2. Evitaría que los administradores accedan inadvertidamente a espacios privados del foro.
  3. Salvaguardaría el acceso no autorizado a dichos espacios privados con un registro real del acceso del administrador.

El primer punto es útil porque la experiencia del administrador es muy diferente de la experiencia del usuario, y los administradores pueden no ser capaces de darse cuenta de los problemas de los usuarios (por ejemplo, relacionados con permisos incorrectos establecidos en categorías o grupos, etc.).

El segundo punto puede ser crítico en casos donde un grupo requiere confidencialidad: hacer clic en un enlace podría llevar al administrador a invadir inadvertidamente y romper la confidencialidad.

El tercer punto permitiría a los administradores ser responsables del acceso no autorizado a partes confidenciales del foro, mientras que actualmente no lo son en absoluto.

¿Cómo podría funcionar?

  • La escalada de privilegios solo debería estar disponible para cuentas de administrador reales.
  • “Administrador” podría considerarse como un Nivel de Confianza adicional (por ejemplo, nivel 5 [1]).
  • Volver al modo “normal” simplemente volvería al TL anterior.

En lugar de proporcionar una “perspectiva de administrador” completamente nueva, el modo Administrador podría agregar una capa adicional de interfaz de usuario:

  • Resaltando enlaces que solo funcionan porque eres administrador.
  • Resaltando categorías a las que solo tienes acceso porque eres administrador.
  • Resaltando membresías de grupo que puedes ver porque eres administrador (por ejemplo, si eres miembro del grupo con acceso limitado a la membresía del grupo, el resaltado no se aplicaría).
  • Resaltando información que solo los administradores pueden ver.

  1. Una referencia a la película de Chris Marker Level 5 en la que un programador de computadoras intenta completar el videojuego de su difunto esposo sobre la batalla de Okinawa para superar el duelo. ↩︎

3 Me gusta

Creo que esto es similar a

3 Me gusta

Puedo ver cómo es similar, sin embargo, hay problemas en la otra discusión que se relacionan con el problema aquí:

Excepto que, cuando eres administrador, no tienes forma de ver que un enlace a una conversación confidencial a la que normalmente no tendrías acceso está en realidad fuera de los límites. Este es solo un caso (que nos ocurrió ayer y me impulsó a iniciar este tema) en el que la no separación de administrador y participante puede ser problemática.

Además, veo que el equipo de Discourse tiene el hábito de ser todos administradores, lo que crea un superpoder horizontal y no ayuda, como cultura, a diferenciar entre el uso normal y el uso privilegiado. No todas las comunidades son horizontales, a veces las personas de tecnología que tienen privilegios de administrador no deberían ser confiadas con todo en el foro, y ese no es un caso extremo: se ha construido en los sistemas informáticos desde el principio que root puede ver y hacer todo. El privilegio ciertamente conlleva responsabilidad, pero a veces la benevolencia no es suficiente, especialmente cuando uno no puede distinguir entre lo que está bien y lo que está fuera de los límites.

Aunque la solución de “usar otro perfil de navegador” para manejar una cuenta normal y una de administrador no es muy práctica, especialmente ya que todos nos acostumbramos a tener las herramientas a mano. Iniciar un nuevo navegador cada vez que se necesita una función de administrador puede ser muy molesto (no a todos les gusta ni pueden permitirse tener recursos inactivos en sus máquinas). Tampoco evita que ocurra la situación del espionaje del operador privilegiado BOFH (Bastard Operator From Hell).

Los tiempos cambian. Aquí, tenemos un administrador que accedió accidentalmente a información confidencial que afectó la vida de otras personas, y no se suponía que lo hiciera. Esto es una violación de la privacidad. Es un problema de seguridad.

Entiendo la complejidad potencial, pero el problema central persiste y probablemente debería resolverse de una forma u otra. En mi opinión, sería útil revisar la cuestión ahora que la base de código ha madurado y evaluar si el enfoque propuesto sería factible.

¡Sí! Tener advertencias y protecciones sobre este tipo de problemas (de intrusión) sería útil.


Sobre los plugins existentes:

Preferiría tener una separación realmente limpia entre participante y administrador utilizando la metáfora clásica y conocida de sudo, por todas las razones expuestas anteriormente.

1 me gusta

Estoy de acuerdo en que el mecanismo sudo —en Windows, el diálogo de Control de Cuentas de Usuario— es una buena manera para que una cuenta tenga el potencial de actuar como administrador, pero sin tener siempre la capacidad.

En uno de mis foros, el enfoque que utilizo es tener un inicio de sesión de administrador, pero normalmente utilizo “Suplantar usuario” para iniciar sesión como una cuenta normal siempre. Cuando necesito actuar como administrador, cierro sesión y vuelvo a iniciarla. Esto significa dos cuentas.

Una ventaja de tener dos cuentas es que, cuando publico o comento con mi cuenta normal, no parezco una persona poderosa e importante. (A veces, comentar como administrador se tomará como una declaración o una acción policial. Depende de la cultura y las expectativas del lector).

1 me gusta

Dado que esta función, si finalmente se implementa (¡no olvides votar por ella!), tardará en llegar, estamos evaluando el uso de dos cuentas. Eso significa: convertir las cuentas existentes en cuentas normales. Esto es lo que debería implicar (intentaré editar esta publicación, o convertirla en una wiki para mantener una documentación actualizada que cubra las advertencias)…

:warning: Aún no probado: todo esto es teórico, sacado de mi cabeza.

Convertir una cuenta de administrador de Discourse existente en una cuenta de usuario normal

Dado que no queremos perder el historial y la “experiencia del foro” de la cuenta original, debemos proceder con cuidado antes de eliminar el privilegio de administrador.

Dado el usuario yo con el correo electrónico yo-original@email.example.

Primer caso: cuenta de administrador en DISCOURSE_DEVELOPER_EMAILS

Si el correo electrónico de la cuenta de administrador forma parte de DISCOURSE_DEVELOPER_EMAILS, no se puede degradar a una cuenta normal.

  1. Cree una nueva cuenta que se convertirá en administrador, por ejemplo, yo2 con el correo electrónico yo-original+admin@email.example.
  2. Desde yo, otorgue privilegios de administración a la nueva cuenta yo2.
  3. Edite app.yml (o web_only.yml si usa la configuración de doble contenedor) para reemplazar yo-original@email.example con yo-original+admin@email.example y reconstruya el contenedor.
  4. Desde yo2, degrade la cuenta original yo.

Ahora tiene una cuenta de usuario normal con toda su experiencia (yo) y una nueva cuenta solo para administradores (yo2): vaya a “Consecuencias”.

Segundo caso: cuenta de administrador promovida de usuario normal

Esto es más simple, ya que se puede degradar a este usuario sin tener que reconstruir el contenedor.

  1. Cree una nueva cuenta que se convertirá en administrador, por ejemplo, yo2 con el correo electrónico yo-original+admin@email.example.
  2. Desde yo, otorgue privilegios de administración a la nueva cuenta yo2.
  3. Desde yo2, degrade la cuenta original yo.

Ahora tiene una cuenta de usuario normal con toda su experiencia (yo) y una nueva cuenta solo para administradores (yo2): vaya a “Consecuencias”.

Consecuencias

Antes, tenía una única cuenta de usuario con privilegios de administrador: recibía notificaciones de actualizaciones del sistema, revisaba las marcas y podía acceder a todas las áreas, incluidas aquellas que no se supone que debe ver (por ejemplo, mensajes privados de usuarios si no están cifrados) o categorías restringidas a grupos de los que no forma parte. ¡Todo esto ha desaparecido! Ahora debe conectarse regularmente a su cuenta de administrador para hacer cualquier cosa que solía hacer desde su cuenta única de usuario/administrador (que es otra razón más por la que la función propuesta es útil). Necesita desarrollar esta disciplina para abrir ambas cuentas al mismo tiempo si desea notificaciones de administración en tiempo real (por ejemplo, usando una pestaña privada en Firefox, o el equivalente para otros navegadores web).

Advertencias

No debe usar su cuenta de administrador para nada más que administración.

¡No navegue por las discusiones mientras sea administrador! Este tiempo se pierde en la progresión de su propio nivel de confianza, y nunca se sabe cuándo podría hacer clic en un enlace que está fuera de sus límites como persona.

Si lee algo mientras está en su cuenta de administrador que le hace reaccionar, cambie a su pestaña de usuario normal y navegue a la URL original, o, si su usuario normal no tiene acceso a esa sección: olvídalo inmediatamente (a menos que, por supuesto, deba reaccionar con su sombrero de administrador).

Debe configurar su cuenta de administrador para que se vea diferente

Cambie su avatar para asegurarse de que nunca confunde su cuenta de administrador y su cuenta de usuario normal. Haga que su perfil sea invisible. Cambie su imagen de fondo o tema, su nombre para incluir “ADMIN” o algo como “ESTA CUENTA NO PUBLICA”, etc. Simplemente asegúrese de que no desea la tentación de publicar con su cuenta de administrador, nunca.

Debe configurar su cuenta de administrador para filtrar notificaciones

TODO: detallar esta sección

Debería configurar su cuenta de administrador para silenciar todas las notificaciones por correo electrónico (a menos que desee recibir dichas notificaciones, por ejemplo, para evitar tener que mantener una pestaña de administrador abierta todo el tiempo) Y poder distinguir claramente cuáles están destinadas a usted como persona, o para su rol de administrador.

Probablemente querrá recibir notificaciones en su escritorio para captar marcas y mensajes importantes.

¿Qué hacer con la categoría staff y los susurros?

Sí, se enfrenta a un problema más complicado al usar dos cuentas separadas para la participación de administradores y usuarios normales. A veces debe interactuar en el foro como administrador. Esto es probablemente inevitable. Intente no volverse esquizofrénico e intente minimizar sus intervenciones de staff tanto como pueda. Por favor, informe sus tácticas para lidiar con este arduo problema, y motive al equipo de administración completo de Discourse a implementar esta función. :wink:

Ventajas de la solución de dos cuentas

  1. Separación limpia entre participación y administración (más o menos)
  2. No puede cometer errores desde su cuenta normal
  3. Todas sus acciones de administración se registran correctamente
  4. Como usuario, experimenta el foro como cualquier otro usuario, por lo que puede detectar fácilmente problemas de permisos
  5. Si publica como admin pero tenía la intención de publicar como usted mismo, puede cambiar la propiedad a su otra cuenta (pero esto de alguna manera anula el propósito de tener dos cuentas).

Entonces, ¿los administradores serán usuarios normales o TL4, pero podrán activar el ‘modo administrador’ para usar las funciones especiales de administrador?
Si es así, ¿qué impide que los administradores lo dejen siempre activado?

2 Me gusta

Esa es una nota interesante. ¿Alguna forma de cerrar la brecha - permitir que un grupo controle la entrega de notificaciones, sin el contenido? “¿Hay publicaciones marcadas?” “¿Hay un mensaje esperando?” “Tu instalación está desactualizada”.

1 me gusta

Aquí tienes una idea: el rol de administrador no puede publicar en una categoría o hilo público, no puede dar “me gusta” a una publicación.

2 Me gusta

También significa que la cuenta podría ser ignorada como un usuario normal. Solo recibiendo actualizaciones necesarias del administrador si queremos ignorarlos.
Realmente genial :+1:t2:

1 me gusta