Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
admin:services:forge.chapril.org [2024/01/28 01:22] – [Tâches récurrentes et modération] pilou | admin:services:forge.chapril.org [2024/01/28 01:25] (Version actuelle) – [Tâches récurrentes et modération] pilou |
---|
- Via l'interface d'administration, notez la date et l'heure de la création du compte | - Via l'interface d'administration, notez la date et l'heure de la création du compte |
- Puis recherchez la date et l'heure dans les logs: ''journalctl -u gitea -S -1w -g 'POST[^/]+/user/sign_up''' | - Puis recherchez la date et l'heure dans les logs: ''journalctl -u gitea -S -1w -g 'POST[^/]+/user/sign_up''' |
* Trouver les comptes récemment créés et actifs (afin de supprimer les nouvelles issues crées par les spammeurs) : | * Trouver les comptes récemment créés et actifs (afin de supprimer les nouvelles issues crées par les spammeurs) (pour [[https://forge.chapril.org/user/settings/applications|créer un token]]): |
<code>for x in $(curl -H "Authorization: token $token" https://forge.chapril.org/api/v1/admin/users | jq -r '.[] | select(.id > 3100) | select(.id | IN(3394, 3288, 3271, 3132) | not) | .login'); do test $(curl -sH "Authorization: token $token" https://forge.chapril.org/api/v1/users/$x/activities/feeds | jq 'map(select(.op_type | IN("comment_issue", "create_issue")))| length') -ne 0 && echo https://forge.chapril.org/$x?tab=activity ; done</code> | <code>for x in $(curl -H "Authorization: token $token" https://forge.chapril.org/api/v1/admin/users | jq -r '.[] | select(.id > 3100) | select(.id | IN(3394, 3288, 3271, 3132) | not) | .login'); do test $(curl -sH "Authorization: token $token" https://forge.chapril.org/api/v1/users/$x/activities/feeds | jq 'map(select(.op_type | IN("comment_issue", "create_issue")))| length') -ne 0 && echo https://forge.chapril.org/$x?tab=activity ; done</code> |
* Supprimer un range : | * Supprimer un range : |
<code>for x in $(curl -H "Authorization: token 0b801669b6efeb0164a8da7310f70dbecf5d662b" https://forge.chapril.org/api/v1/admin/users | jq -r '(.[] | select(.id > 3330)) | select(.id < 3394)| .login'); do curl -H "Authorization: token 0b801669b6efeb0164a8da7310f70dbecf5d662b" -X DELETE -H "Content-Type: application/json" https://forge.chapril.org/api/v1/admin/users/$x?delete=true ; done</code> | <code>for x in $(curl -H "Authorization: token $token" https://forge.chapril.org/api/v1/admin/users | jq -r '(.[] | select(.id > 3330)) | select(.id < 3394)| .login'); do curl -H "Authorization: token $token" -X DELETE -H "Content-Type: application/json" https://forge.chapril.org/api/v1/admin/users/$x?delete=true ; done</code> |
* Sélection des comptes récents contenant des liens en description : | * Sélection des comptes récents contenant des liens en description : |
<code>for x in $(curl -H "Authorization: token $token" https://forge.chapril.org/api/v1/admin/users | jq -r '.[] | select(.id > 3100) | .login'); do clear; curl -sH "Authorization: token $token" https://forge.chapril.org/api/v1/users/$x | jq -er 'select(.website != "" or (.description | test("http"))) | .login + "\n" + .website + .description + "\n"' && (read -e -p "Delete ? " delete; [[ "$delete" == [Yy]* ]] && curl -H "Authorization: token $token" -X DELETE -H "Content-Type: application/json" https://forge.chapril.org/api/v1/admin/users/$x?purge=true && echo -e "deleted\n"); done</code> | <code>for x in $(curl -H "Authorization: token $token" https://forge.chapril.org/api/v1/admin/users | jq -r '.[] | select(.id > 3100) | .login'); do clear; curl -sH "Authorization: token $token" https://forge.chapril.org/api/v1/users/$x | jq -er 'select(.website != "" or (.description | test("http"))) | .login + "\n" + .website + .description + "\n"' && (read -e -p "Delete ? " delete; [[ "$delete" == [Yy]* ]] && curl -H "Authorization: token $token" -X DELETE -H "Content-Type: application/json" https://forge.chapril.org/api/v1/admin/users/$x?purge=true && echo -e "deleted\n"); done</code> |
* modération des dépôts: en cas d'absence de licence ou de licence non conforme aux CGU, envoi d'un mail à l'utilisateur et suppression si au bout de 15 jours celui-ci ne s'est pas mis pas en conformité avec les CGU. | * modération des dépôts: en cas d'absence de licence ou de licence non conforme aux CGU, envoi d'un mail à l'utilisateur et suppression si au bout de 15 jours celui-ci ne s'est pas mis pas en conformité avec les CGU. |