Por alguna razón, los cambios de seguridad que intento aplicar no funcionan; todo vuelve a la configuración predeterminada cuando se actualiza una página.
No estoy seguro de qué podría causar este comportamiento, ¿podría ser nuestro tema personalizado?
Esta categoría es pública, todos pueden ver, responder y crear publicaciones. Para restringir los permisos, elimina uno o más de los permisos otorgados al grupo “todos”.
Así que para eliminar el permiso de “crear”, puedes eliminar todos, y luego agregar todos con la configuración que desees; lo probé ahora mismo en 2.9.0.beta3 y funciona…
En esa captura de pantalla () el botón “Nuevo tema” no funciona.
Sin embargo… cuando actualizo los permisos de una categoría, muestra el mismo mensaje “Esta categoría es pública…”, y todas las casillas están marcadas, mientras que los permisos previstos permanecen; en este caso, las tres casillas están marcadas, pero la categoría en cuestión solo permite leer y responder, pero no crear nuevos temas.
Voy a reconstruir mi sitio y probar más, para ver si esto persiste.
¿Sabes qué? En realidad entendí mal ese texto de ayuda, y mi cerebro simplemente se le ocurrió una solución alternativa, aunque el comportamiento esperado no funcionaba en mi sitio.
Así que por favor ignora mi extraño hackeo y centrémonos en reproducir este error.
Si desmarcas una casilla, ¿realmente establece ese permiso, a pesar de que la actualización muestra todas las casillas marcadas? Así es como funciona para mí, si establezco los permisos, se aplican, pero una vista nueva de los permisos siempre restablece las casillas marcadas, aunque los permisos permanecen aplicados.
¡Oh, buena observación! Estoy viendo que eso también sucede.
Restablecí los permisos de seguridad eliminando todos los grupos (No se ha concedido acceso a ningún grupo; esta categoría solo será visible para el personal.)
Añadí ‘everyone’ con todos los permisos (comprobé el usuario de prueba - funciona como se esperaba )
Desmarqué ‘create’ y actualicé (la pantalla muestra una reversión a que todas estén marcadas)
Comprobé el usuario de prueba y ya no puede crear un tema en esa categoría, a pesar de que la pantalla de seguridad muestra que sí puede.
Y algo similar ocurre al añadir un segundo grupo junto a ‘everyone’. El grupo ‘everyone’ desaparece de la visualización, pero los permisos parecen ser efectivos.
Puedo reproducir esto incluso en la versión 2.8.2, así que este es un error bastante antiguo que nadie ha notado.
Sin embargo, los permisos se están guardando correctamente en la base de datos.
El problema “solo” parece ser que la interfaz de usuario marca todas las casillas tan pronto como se carga la pestaña de seguridad.
Cuando llevo la segunda prueba un paso más allá y añado un tercer grupo, parece anular y eliminar la configuración de seguridad oculta/de fondo de ‘todos’. Por ejemplo:
Restablecer permisos de seguridad eliminando todos los grupos (No se ha concedido acceso a ningún grupo; esta categoría solo será visible para el personal).
Añadido ‘todos’ con todos los permisos (usuario de prueba comprobado - funcionando como se esperaba )
Hacer que ‘todos’ solo vean (actualizar. todas las casillas marcadas pero en realidad, solo pueden ver)
Añadir Grupo2 con todos los permisos (actualizar. ‘todos’ desaparece, pero en realidad, todos todavía pueden ver)
Añadir Grupo3 (actualizar. Grupo2 y 3 son visibles, ‘todos’ ha perdido la capacidad de ver la categoría)
El problema está en el CategorySerializer y se introdujo en el commitdfaf983.
Es una corrección de seguridad que se ha incluido en versiones anteriores, por eso también ocurre en la versión estable.