¡Hola, Robert!
He estado analizando el código del plugin y la base de código sobre los controles de publicaciones (acciones) para determinar en qué aspectos puedo contribuir más a la seguridad.
Como se analizó: en el front-end hay varios pasos que verifican si el usuario puede editar o no la publicación, como:
- 1.º paso: SiteSetting.post_menu_hidden_items
- 2.º paso: attrs.canEdit
- 3.º paso: editPost() - !post.can_edit - controllers/topic
Pero, incluso si se manipula desde el front-end, una vez que los datos se envían al servidor en el back-end, en posts_controller.rb, dentro de:
def update
Rails vuelve a solicitar la publicación como verificación final:
- !guardian.public_send(“can_edit?”, post)
- guardian.ensure_can_edit!(post)
- PostRevisor
¡Gracias por tus comentarios!
Es genial.