Coin web de Frédéric Péters

fpeters@0d.be

Radio Panik et mise Ă  jour Mastodon

20 juillet 2025, 15:57

Ça fait bientôt deux ans que les podcasts de Radio Panik sont annoncés dans le fedivers, via le serveur Mastodon piaille.fr.

Le 10 juillet ce serveur est passé de la version 4.3.8 à 4.4.1, BIM BAM BOUM est-il annoncé,

Capture de l’annonce de Admin Piaille qui dit "Et BIM BAM BOUM on vient de passer de la version 4.3.8 à la version 4.4.1

Et en effet : je ne l’ai pas remarquĂ© tout de suite mais la publication automatique des podcasts de la radio s’est arrĂŞtĂ©e Ă  ce moment-lĂ .

Je l’ai vu hier soir trop fatiguĂ© pour bien comprendre la situation, j’y ai consacrĂ© le temps nĂ©cessaire aujourd’hui et l’histoire commence dans le « changelog Â» de Mastodon, le fichier faisant le rĂ©capitulatif de tous les changements et dedans, pour la version 4.4.0 :

Remove support for OAuth Password Grant Type (#30960 by @ThisIsMissEm)
https://docs.joinmastodon.org/spec/oauth/#token

Le mode d’authentification par mot de passe était le mode le plus simple à coder et c’était donc ce que j’avais fait, mais pas de chance c’est supprimé.

À chercher des infos je lis la page OAuth details qui pointe vers l’utilisation d’un refresh_token, dans une phrase qui me semble se mordre un peu la queue,

Get the refresh_token from your local cache. If you have one, any access token you might have has probably expired anyway. Refresh by visiting /oauth/token using a POST request with the parameters client_id=<client_key> (yes, this is confusing!), client_secret=<client_secret>, grant_type=refresh_token, refresh_token=<refresh_token>. Save the access_token you get back in your local cache.

J’essaie nĂ©anmois et la rĂ©ponse fuse :

{
 "error":"unsupported_grant_type",
 "error_description":"Le type de consentement d’autorisation n’est pas pris en charge par le serveur d’autorisation."
}

Allant plus loin je lis la documentation de la bibliothèque utilisĂ©e, qui parle d’une action Ă  rĂ©aliser pour activer ce mode avec refresh tokens :

To enable refresh tokens in your provider, go to initializers/doorkeeper.rb and add (or uncomment) this line:

À ce moment j’en suis à composer un message pour les adminstrateur·ices du serveur, leur demander de faire ça, quand je relis plus attentivement la documentation pointée dans le changelog, elle note bien ce qui a été supprimé,

Mastodon has historically supported the Password Grant flow, however, usage is not recommended by the OAuth 2 Specification authors due to security issues, and has subsequently been removed from future versions of Mastodon. Instead, it is recommended that you create an OAuth Application for that user, and use the generated Access Token for interacting with the API.

Il n’est ici pas question de refresh token, vraisemblablement il n’y a rien à activer côté piaille.fr et c’est de mon côté que je rate quelque chose.

Après quelques tests c’est quelque chose de bien simple en fait : le access token qui est rĂ©cupĂ©rĂ© pour l’authentification n’expire pas, il y a donc simplement moyen de l’enregistrer et le rĂ©utiliser par la suite. J’ai donc validĂ© et codĂ© ça et ça a fonctionnĂ©, j’ai mis Ă  jour la documentation de panikdb.

Le dĂ©roulĂ© pour la configuration est dĂ©sormais de demander un code d’autorisation unique via le paramètre --ask-code, de le copier-coller dans le paramètre --use-code, un access token sera rĂ©cupĂ©rĂ© et enregistrĂ©.

Les annonces sont de retour.

Capture d’écran d’un post annonçant le podcast d’une émission

 

 

Avant ça :
🦥