Authentification et Autorisation

Castopod gère l'authentification et l'autorisation à l'aide de codeigniter/shield associés à des règles personnalisées. Les rôles et les autorisations sont définis sur deux niveaux :

  1. à l'échelle de l'instance
  2. par podcast

1. Rôles et autorisations à l'échelle de l'instance

Rôles dans l’instance

rôledescriptionpermissions
Super adminA un contrôle complet sur Castopod.admin.*, podcasts.*, users.manage, persons.manage, pages.manage, fediverse.manage-blocks
GestionnaireGère le contenu de Castopod.podcasts.create, podcasts.import, persons.manage, pages.manage
PodcasterUtilisateurs généraux de Castopod.admin.access

Autorisations dans l'instance

autorisationdescription
admin.accessPeut accéder à la zone d'administration Castopod.
admin.settingsPeut accéder aux paramètres de Castopod.
users.managePeut gérer les utilisateurs de Castopod.
persons.manageCan manage persons.
pages.managePermet de gérer les pages.
podcasts.viewPeut voir tous les podcasts.
podcasts.createPeut créer de nouveaux podcasts.
podcasts.importPeut importer des podcasts.
fediverse.manage-blocksCan block fediverse actors/domains from interacting with Castopod.

2. Rôles et autorisations par podcast

Rôles par podcast

rôledescriptionpermissions
AdminA un contrôle total sur le podcast #{id}.*
ÉditeurGère le contenu et les publications du podcast #{id}.view, edit, manage-import, manage-persons, manage-platforms, manage-publications, manage-notifications, interact-as, episodes.view, episodes.create, episodes.edit, episodes.delete, episodes.manage-persons, episodes.manage-clips, episodes.manage-publications, episodes.manage-comments
AuteurGère le contenu du podcast #{id} , mais ne peut pas le publier.view, manage-persons, episodes.view, episodes.create, episodes.edit, episodes.manage-persons, episodes.manage-clips
InvitéContributeur général du podcast #{id}.view, episodes.view

Permissions par podcast

autorisationdescription
voirVisualisation du tableau de bord et de l'analyse du podcast #{id}.
éditerPeut éditer le podcast #{id}.
supprimerPeut supprimer le podcast #{id}.
gérer les importationsPeut synchroniser le podcast importé #{id}.
gérer les personnesPermet de gérer les abonnements au podcast #{id}.
gérer les abonnementsPermet de gérer les abonnements au podcast #{id}.
gérer contributeursPermet de gérer les contributeurs du podcast #{id}.
gérer les plates-formesPeut configurer/supprimer les liens de la plateforme du podcast #{id}.
gérer les publicationsPeut publier le podcast #{id}.
gérer les notificationsPeut afficher et marquer les notifications comme lues pour le podcast #{id}.
interagir en tant quePeut interagir en tant que podcast #{id} pour ajouter, partager ou répondre aux messages.
episodes.viewPeut voir le tableau de bord et les analyses du podcast #{id}.
créer des épisodesPeut créer des épisodes pour le podcast #{id}.
éditer les épisodesPeut éditer le podcast #{id}.
supprimer les épisodesPeut supprimer le podcast #{id}.
episodes.manage-personsPermet de gérer les abonnements au podcast #{id}.
episodes.manage-clipsPermet de gérer les clips vidéo ou les parties sonores du podcast #{id}.
episodes.manage-publicationsPeut publier le podcast #{id}.
episodes.manage-commentsPeut créer/supprimer les commentaires de l'épisode du podcast #{id}.