rss des révisions limitée à l'auteur qui le demande #4846

Open
opened 7 months ago by Jack31 · 14 comments

Constaté sur spip.net en 4.2.0 le rss demandé sur les révisions est limité aux révisions de l'auteur qui les demande. Même si cet auteur est admin complet.

https://www.spip.net/transmettre.api/593/7bc51e0d/rss/revisions
Ne donne que les révisions faites par l'auteur 593... ce dont l'auteur 593 se moque un peu ^^ (A signaler que sur les forums privés par exemple ça fonctionne bien)

Constaté sur spip.net en 4.2.0 le rss demandé sur les révisions est limité aux révisions de l'auteur qui les demande. Même si cet auteur est admin complet. https://www.spip.net/transmettre.api/593/7bc51e0d/rss/revisions Ne donne que les révisions faites par l'auteur 593... ce dont l'auteur 593 se moque un peu ^^ (A signaler que sur les forums privés par exemple ça fonctionne bien)
b_b commented 7 months ago
Owner

Ça semble être le cas depuis au moins 12 ans ^^

https://git.spip.net/spip/revisions/blame/branch/master/prive/squelettes/contenu/revisions.html#L9

Mais oui, je pense que le flux devrait renvoyer toutes les révisions quand on est sur cet onglet.

Ça semble être le cas depuis au moins 12 ans ^^ https://git.spip.net/spip/revisions/blame/branch/master/prive/squelettes/contenu/revisions.html#L9 Mais oui, je pense que le flux devrait renvoyer toutes les révisions quand on est sur cet onglet.
b_b added the
bug
label 7 months ago
b_b added this to the spip-4.2 milestone 7 months ago
Poster

Oui mais dans les versions récentes on ne pouvait pas constater le bug parce qu'il était caché par un autre !
image
(screenshot de 4.1.7 et je précise que sur le site où j'ai fait le screenshot je suis webmestre ;) )

Oui mais dans les versions récentes on ne pouvait pas constater le bug parce qu'il était caché par un autre ! ![image](/attachments/60ec77d9-8d83-4d3a-9945-003361e00990) (screenshot de 4.1.7 et je précise que sur le site où j'ai fait le screenshot je suis webmestre ;) )
3.8 KiB
Jack31 closed this issue 3 months ago
Jack31 reopened this issue 3 months ago
Poster

Je tourne en rond depuis un moment mais je ne vois pas le bouton "faire une demande de fusion" à partir de la modif que j'ai faite sur mon fork de spip/revisions
image

Je tourne en rond depuis un moment mais je ne vois pas le bouton "faire une demande de fusion" à partir de la modif que j'ai faite sur mon fork de spip/revisions ![image](/attachments/13776be8-0bb3-4dcf-82e4-9cf69fe12799)
b_b commented 3 months ago
Owner
Depuis https://git.spip.net/Jack31/revisions/src/branch/master le premier bouton à côté du sélecteur de branches renvoie vers https://git.spip.net/spip/revisions/compare/master...Jack31/revisions:master ;)
Poster

Je ne sais pas... J'ai fini par créer une nouvelle branche après avoir fait ma modif parce que je n'avais pas ce bouton de demande de fusion...
Je ne fais pas souvent des PR sur le core mais je crois que j'ai fait comme d'habitude...
Bref, c'est un peu l'école de la souffrance ce truc.
(sans parler du ticket qui se ferme sans qu'on le demande)

Je ne sais pas... J'ai fini par créer une nouvelle branche après avoir fait ma modif parce que je n'avais pas ce bouton de demande de fusion... Je ne fais pas souvent des PR sur le core mais je crois que j'ai fait comme d'habitude... Bref, c'est un peu l'école de la souffrance ce truc. (sans parler du ticket qui se ferme sans qu'on le demande)
Poster

Bon, je vais supprimer mon fork qui ne sert à rien.
Sinon, j'avais réglé le problème en supprimant {id_auteur ?} dans la boucle dans

<BOUCLE_RSS(VERSIONS auteurs)
	{id_version >1}
	{!par date}
	{0,10}
	{id_secteur ?}
	{id_auteur ?}>

dans
https://git.spip.net/spip/revisions/src/branch/master/prive/transmettre/rss/revisions.html

Testé en incarnant plusieurs auteurs avec différents droits et tout semblait OK

Bon, je vais supprimer mon fork qui ne sert à rien. Sinon, j'avais réglé le problème en supprimant `{id_auteur ?}` dans la boucle dans ``` <BOUCLE_RSS(VERSIONS auteurs) {id_version >1} {!par date} {0,10} {id_secteur ?} {id_auteur ?}> ``` dans https://git.spip.net/spip/revisions/src/branch/master/prive/transmettre/rss/revisions.html Testé en incarnant plusieurs auteurs avec différents droits et tout semblait OK
b_b commented 3 months ago
Owner

Mais non, je viens de te donner la piste pour ouvrir la PR !

Mais non, je viens de te donner la piste pour ouvrir la PR !
Poster

Et bien je n'ai pas compris... j'ai supprimé mon fork.

Et bien je n'ai pas compris... j'ai supprimé mon fork.
Owner

j’ai quand même un doute : il n’y a aucune autorisation de voir le contenu d’un autre auteur là dans le RSS

Donc un rédacteur pourrait voir les révisions d’autres autrices, d’articles non publiés.

Vue des révisions

Or sur la page d’accueil de ecrire/, ce n’est actuellement pas le cas :

  1. Il y a un test qui vérifie si on est admin pour voir les autres révisions…
$contexte = [];
if ($GLOBALS['visiteur_session']['statut'] !== '0minirezo') {
	$contexte['id_auteur'] = $GLOBALS['visiteur_session']['id_auteur'];
}
$flux['data'] .= recuperer_fond('prive/objets/liste/versions', $contexte, ['ajax' => true]);
  • d’ailleurs admin restreint semble suffire
  • et d’ailleurs ça mériterait d’être une autorisation plus logiquement
  • je ne vois pas trop l’intérêt de limiter ici à l’auteur concerné (d’autant que ce n’est pas le cas sur la vue dans Publication > suivi des révisions), mais soit.
  1. Il y a une autorisation pour chaque item dans liste/versions
[(#AUTORISER{voirrevisions, #OBJET, #ID_OBJET}|oui)
...
]

Ce qui fait qu’un·e (statut) rédacteur / rédactrice ne voit pas les révisions d’objets non publiés d’autres auteurs / autrices.

RSS des révisions

Le RSS n’a actuellement pas ce test d’autorisation, si on enlève {id_auteur ?} de la boucle, on dévoile des contenus non publiés d’autres personnes.

j’ai quand même un doute : il n’y a aucune autorisation de voir le contenu d’un autre auteur là dans le RSS Donc un rédacteur pourrait voir les révisions d’autres autrices, d’articles non publiés. ### Vue des révisions Or sur la page d’accueil de ecrire/, ce n’est actuellement pas le cas : 1) Il y a un test qui vérifie si on est admin pour voir les autres révisions… ```php $contexte = []; if ($GLOBALS['visiteur_session']['statut'] !== '0minirezo') { $contexte['id_auteur'] = $GLOBALS['visiteur_session']['id_auteur']; } $flux['data'] .= recuperer_fond('prive/objets/liste/versions', $contexte, ['ajax' => true]); ``` - d’ailleurs admin restreint semble suffire - et d’ailleurs ça mériterait d’être une autorisation plus logiquement - je ne vois pas trop l’intérêt de limiter ici à l’auteur concerné (d’autant que ce n’est pas le cas sur la vue dans Publication > suivi des révisions), mais soit. 2) Il y a une autorisation pour chaque item dans liste/versions ```html [(#AUTORISER{voirrevisions, #OBJET, #ID_OBJET}|oui) ... ] ``` Ce qui fait qu’un·e (statut) rédacteur / rédactrice ne voit pas les révisions d’objets non publiés d’autres auteurs / autrices. ### RSS des révisions Le RSS n’a actuellement pas ce test d’autorisation, si on enlève `{id_auteur ?}` de la boucle, on dévoile des contenus non publiés d’autres personnes.
Owner

Ma conclusion est que simplement enlever {id_auteur?} n’est pas une solution adéquat.

Ma conclusion est que simplement enlever `{id_auteur?}` n’est pas une solution adéquat.
b_b commented 2 months ago
Owner

D'accord avec les remarques de @marcimat je pense qu'on peut fermer #4855 à moins que @Jack31 soit chaud pour l'amender dans le sens des commentaires formulés ici.

D'accord avec les remarques de @marcimat je pense qu'on peut fermer https://git.spip.net/spip/revisions/pulls/4855 à moins que @Jack31 soit chaud pour l'amender dans le sens des commentaires formulés ici.
Poster

Bah du moment qu'on ne ferme pas ce ticket lui même.

J'ai commencé de regarder s'il était possible d'intégrer [(#AUTORISER{voirrevisions, #OBJET, #ID_OBJET}|oui) comme dans \prive\objets\liste\versions.html
Mais manifestement comme je fais ça ne va pas.

Bah du moment qu'on ne ferme pas ce ticket lui même. J'ai commencé de regarder s'il était possible d'intégrer `[(#AUTORISER{voirrevisions, #OBJET, #ID_OBJET}|oui)` comme dans `\prive\objets\liste\versions.html` Mais manifestement comme je fais ça ne va pas.
Poster

Avant de proposer une nouvelle version de la PR je voudrais clarifier un point, la page revisions n'étant apparemment pas limitée pour les rédacteurs...

  • La liste des révisions sur la page d'accueil est limitée à celles du rédacteur oui,
  • mais pas mondomaine.tld/?exec=revisions où il me semble qu'un redac voit toutes les révisions
    (et un admin restreint il me semble qu'il voit toutes les révisions aussi sur l'accueil du privé)
Avant de proposer une nouvelle version de la PR je voudrais clarifier un point, la page revisions n'étant apparemment pas limitée pour les rédacteurs... - La liste des révisions sur la page d'accueil est limitée à celles du rédacteur oui, - mais pas mondomaine.tld/?exec=revisions où il me semble qu'un redac voit toutes les révisions (et un admin restreint il me semble qu'il voit toutes les révisions aussi sur l'accueil du privé)

Bonjour,
Je ne suis pas sure de tout comprendre de ce qui empêche un administrateur de voir via un flux RSS les révisions des contributeurs étant donné que cela était possible jusqu'à SPIP 4.0 ou 4.1.
Est-ce qu'au final cette fonction est abandonnée ?
Merci
dd

PS si j'enlève le {id_auteur ?} ligne 21
dans plugins-dist/revisions/prive/transmettre/revisions.html j'obtiens une page blanche.

Bonjour, Je ne suis pas sure de tout comprendre de ce qui empêche un administrateur de voir via un flux RSS les révisions des contributeurs étant donné que cela était possible jusqu'à SPIP 4.0 ou 4.1. Est-ce qu'au final cette fonction est abandonnée ? Merci dd PS si j'enlève le `{id_auteur ?} ligne 21` dans plugins-dist/revisions/prive/transmettre/revisions.html j'obtiens une page blanche.
Sign in to join this conversation.
No Milestone
No Assignees
4 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: spip/revisions#4846
Loading…
There is no content yet.