Entendiendo estados, roles y permisos de usuario

:bookmark: Esta es una guía para comprender los diversos estados de usuario, roles y permisos dentro de Discourse, incluida la forma en que afectan las capacidades del usuario y cómo se almacenan en la base de datos.

:person_raising_hand: Nivel de usuario requerido: Administrador

Discourse tiene muchos estados de usuario, roles y permisos integrados.

Estos estados y roles se pueden ver para un usuario determinado al ver su perfil en la sección de usuarios del panel de administración:

Estado de permiso

Activado (Activated)

La cuenta tiene un correo electrónico verificado y, por lo tanto, está activa en la instancia de Discourse

  • La cuenta puede iniciar sesión en Discourse, las cuentas inactivas no pueden iniciar sesión
  • Las cuentas inactivas solo pueden verificar su correo electrónico (y otras rutas según sea necesario para completar el registro).

Almacenamiento: Columna booleana active en la tabla users

Provisional (Staged)

Una cuenta marcador de posición especial que el sistema crea automáticamente para la integración por correo electrónico

  • Nunca se envían resúmenes de correo electrónico
  • Observa automáticamente todos los mensajes en los que participa y recibe notificaciones de respuestas
  • Puede responder por correo electrónico a las notificaciones
  • El nombre de usuario y el nombre se seleccionan automáticamente
  • La cuenta aún puede registrarse con el mismo correo electrónico y “tomar el control” de la cuenta provisional.
  • No puede recibir correos electrónicos de restablecimiento de contraseña

Almacenamiento: Campo staged en la tabla users

Administrador (Admin)

Los usuarios administradores son los superusuarios del sistema, pueden:

  • Suplantar a no administradores
  • Cambiar la configuración del sitio
  • Crear grupos
  • Modificar personalizaciones del sitio
  • Realizar todas las acciones que pueden realizar los moderadores
  • Leer cualquier mensaje privado
  • Crear, eliminar y modificar categorías
  • Ignorar los permisos de categoría para ver categorías privadas

Almacenamiento: El campo booleano admin en la tabla users marca las cuentas de administrador.

Moderador (Moderator)

Usuario avanzado capaz de moderar el sitio:

  • Obtiene un icono de escudo junto al nombre en las publicaciones
  • Puede realizar todas las acciones que el personal puede realizar

Almacenamiento: El campo booleano moderator en la tabla users

Personal (Staff)

Un usuario del personal es cualquier usuario que sea administrador o moderador (o ambos).

  • Inmune a los límites de velocidad
  • Puede procesar las banderas y publicaciones retenidas en la cola de moderación
  • Puede eliminar temas y publicaciones, dividir temas, fusionar temas, ocultar temas y demás.
  • Puede ver información del usuario (excluyendo correos electrónicos para moderadores)
  • Puede suspender, silenciar, anonimizar y eliminar usuarios
  • Puede ajustar el nivel de confianza de un usuario

Almacenamiento: Calculado a partir de las columnas admin y moderator en la tabla users

Moderador de Categoría (Category Moderator)

Este es un usuario que no es del personal y que forma parte de un grupo al que se le han concedido poderes de moderación selectos sobre categorías específicas. Esto se puede habilitar por sitio utilizando la configuración de administración enable category group moderation (habilitar moderación de grupo de categorías), y se establece para cada categoría en la pestaña Configuración de la llave de tuerca de la categoría:

Nivel de confianza 0 - 4

Ver: ¿Qué hacen los niveles de confianza de usuario?

Almacenamiento: El campo numérico trust_level en la tabla users

Suspendido (Suspended)

Cuenta suspendida de la instancia de Discourse

  • Se muestra una nota en la página del usuario que indica el motivo de la suspensión
  • No se permite el inicio de sesión
  • La cuenta solo puede ser mencionada por el personal
  • No se envían correos electrónicos al usuario para ninguna notificación (resumen, mensaje, etc.)
  • Como excepción, cualquier correo electrónico iniciado por el personal todavía se envía al usuario

Almacenamiento: Columna datetime suspended_till en la tabla users

Silenciado (Silenced)

Ya sea manualmente por el personal o cuando el sistema de spam marca una cuenta como problemática, se deshabilita toda publicación.

  • La cuenta no puede responder a ningún tema
  • La cuenta no puede crear ningún tema
  • La cuenta no puede crear MD (mensajes directos), pero puede responder a MD
  • La cuenta no puede crear banderas
  • La cuenta aún puede dar “me gusta” y marcar como favorito
  • La cuenta aún puede cambiar las preferencias de usuario y la información sobre mí (TBD si esto es una buena idea)
  • El modo lista de correo deja de funcionar

Almacenamiento: Columna datetime silenced_till en la tabla users


Otro estado

Los usuarios pueden tener algunos estados adicionales que no se muestran en la sección de permisos del panel de administración.

Nuevo usuario (New user)

Cuenta con restricciones especiales para el primer día de uso o cuentas nuevas. Los new_users tienen límites de velocidad especiales definidos en la configuración del sitio

  • Cuenta con Nivel de Confianza 1 creada en las últimas 24 horas, o Nivel de Confianza 0
  • Cuenta que no es del personal

Límites:

  • Solo puede crear una publicación cada 30 segundos (rate_limit_new_user_create_post)

Almacenamiento: Calculado a partir de las columnas created_at, moderator, admin y trust_level en la tabla users

Usuario del primer día (First day user)

Restricciones adicionales especiales que se aplican a un usuario dentro de las 24 horas posteriores a su primera publicación

  • Aún no ha publicado, o la primera publicación se creó hace menos de 24 horas
  • Cuenta que no es del personal
  • No es TL2 o superior

Límites:

  • Solo puede crear 10 respuestas (max_replies_in_first_day)
  • Solo puede crear 3 temas (max_topics_in_first_day)

Almacenamiento: Calculado a partir de first_post_created_at en la tabla user_stats, más las columnas moderator, admin y trust_level en la tabla users

Aprobado (Approved)

Si la configuración del sitio must_approve_users (los usuarios deben ser aprobados) está habilitada, un usuario debe estar approved antes de que se le permita iniciar sesión.

Almacenamiento: Columna booleana approved en la tabla users

Desarrollador (Developer)

Cuenta especial utilizada para instalar Discourse

  • Muestra rack-mini-profiler mostrando tiempos en la página
  • Suplantar cualquier cuenta, incluidos los administradores
  • Se convierte automáticamente en administrador y tiene todos los derechos de administrador

Almacenamiento: Controlado a través de la configuración global developer_emails o la tabla developers. En la instalación de Docker, utilice la variable de entorno DISCOURSE_DEVELOPER_EMAILS para especificar una lista de correos electrónicos de los usuarios que son desarrolladores.

Recursos adicionales

Para un desglose más detallado de los poderes específicos otorgados a los moderadores de categorías, consulte Trust Level Permissions Reference.

90 Me gusta
Modifying Staff Roles to go beyond Administrator and Moderator?
List of full moderation tools?
Deactivating users permanently
Improving Blocked User State
Which setting(s) would prevent Discourse from emailing an old user?
What permissions can admins give moderators?
View Forum as User X
Levels and Staff roles
A new trust level: The Helpful member?
Understading groups in discourse
How to disable mail for staged users?
How i can manage roles for moderators and administrators?
Discourse User Roles difference
Suspend all users apart from admin users for development copy
Who is able to change profile of another user
How do I block a user?
How does discourse count users?
A single number for users ranking (reputation like)?
Allow moderators to create groups
What is a staged user?
Discourse User Features
How to activate users after a large import of mbox archives
Disable DM visibility from Admins
Understanding Discourse Trust Levels
What are "staged users"?
Additional admins & moderators / staff users on pricing page
Trying to understand "staff" slots and moderation in hosted plans
Promoting a User to Admin or Moderator Status
Moderators vs Staff
Adding users to the developers table
Error adding a backup email address: address already in use by a staged user
Trying to understand "staff" slots and moderation in hosted plans
Create staged users via API?
Admin ability to impersonate other admin differs between admins
My Wiki of useful Meta (and other) links
TOC missing after using browsers back button
Proposed: allow moderators to silence, not delete users flagged by akismet
Incorrect account stats
How to reply to staged user through discourse?
Daily Summary (9pm UTC)
Improving Blocked User State
Users who are 'activated' but not 'approved'
Why are system and super admin both mod and admin?
Why are system and super admin both mod and admin?
Does the 'Posted' field in the user card include topics in private categories?
Unlisted option on creation of a new topic
Improving Blocked User State
Are banned members supposed to receive email notifications?
What is a staff user on hosted Discourse?
Limit the daily number of posts from a user
Major slowdown for staff in large topics
For how long a new user is considered "new user"?
How to invite someone to answer a question?
Auto-remove accounts when SSO ID is not longer valid
Best strategy for member who wants to "pause"? Suspend may not be it
How might we better structure #howto?
Send email to non registered user in a group
Difference between “member” and “staff user”
Send email to non registered user in a group
New pending application generates staff notification
Change user registration date (created_at) via API
Please update 'Understanding Discourse Trust Levels' — or is there a different doc?
When you started your first Discourse community, what did you find hard to do?
Can I enforce Slow Mode on a per-user basis or limit their comments?
Understanding Discourse Trust Levels
Watch topic using email address without requiring registration
Can T4 members access personally identifiable information?
How to get an API key