Zum Inhalt springen

Authentifizierung & Autorisierung

Castopod behandelt Authentifizierung und Autorisierung mit codeigniter/shield kombiniert mit eigenen Regeln. Rollen und Berechtigungen sind auf zwei Ebenen definiert:

  1. instanzweit
  2. je Podcast

1. Instanzweite Rollen und Berechtigungen

Instanz Rollen

roledescriptionpermissions
Super-AdministratorHat die vollständige Kontrolle über Castopod.admin.*, podcasts.*, users.manage, persons.manage, pages.manage, fediverse.manage-blocks
ManagerVerwaltet Castopods Inhalte.podcasts.create, podcasts.import, persons.manage, pages.manage
PodcasterAllgemeine Benutzer von Castopod.admin.access

Instanz Berechtigungen

permissiondescription
admin.accessKann auf den Admin-Bereich von Castopod zugreifen.
admin.settingsKann auf die Einstellungen von Castopod zugreifen.
users.manageKann Castopod-Benutzer verwalten.
persons.manageKann Mitwirkende verwalten.
pages.manageKann Seiten verwalten.
podcasts.viewKann alle Podcasts einsehen.
podcasts.createKann neue Podcasts erstellen.
podcasts.importKann Podcasts importieren.
fediverse.manage-blocksKann föderierte Nutzer/Domains davon abhalten, mit Castopod zu interagieren.

2. Pro Podcast Rollen und Berechtigungen

Pro Podcast Rollen

roledescriptionpermissions
AdministratorHat die vollständige Kontrolle über Podcast #{id}.*
EditorVerwaltet Inhalte und Veröffentlichungen von 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
AutorVerwaltet Inhalte von Podcast #{id}, kann diese aber nicht veröffentlichen.view, manage-persons, episodes.view, episodes.create, episodes.edit, episodes.manage-persons, episodes.manage-clips
GastAllgemeiner Mitwirkender des Podcasts #{id}.view, episodes.view

Pro Podcast Berechtigung

permissiondescription
viewKann das Dashboard und Analysen des Podcasts #{id} einsehen.
editKann Podcast #{id} bearbeiten.
deleteKann Podcast #{id} löschen.
manage-importKann den importierten Podcast #{id} synchronisieren.
manage-personsKann Abonnements des Podcasts #{id} verwalten.
manage-subscriptionsKann Abonnements des Podcasts #{id} verwalten.
manage-contributorsKann Mitwirkende des Podcasts #{id} verwalten.
manage-platformsKann Plattform-Links des Podcasts #{id} verwalten.
manage-publicationsKann Podcast #{id} veröffentlichen.
manage-notificationsKann Benachrichtigungen des Podcasts #{id} einsehen und als gelesen markieren.
interact-asKann als Podcast #{id} interagieren, um Beiträge zu favorisieren, zu teilen oder diese zu beantworten.
episodes.viewKann Dashboards und Analysen von Episoden des Podcasts #{id} einsehen.
episodes.createKann Folgen für Podcast #{id} erstellen.
episodes.editKann Folgen von Podcast #{id} bearbeiten.
episodes.deleteKann Folgen von Podcast #{id} löschen.
episodes.manage-personsKann Personen von Episoden des Podcasts #{id} verwalten.
episodes.manage-clipsKann Videoclips und Soundbites des Podcasts #{id} verwalten.
episodes.manage-publicationsKann Episoden und Posts von Podcast #{id} veröffentlichen/zurückziehen.
episodes.manage-commentsKann Kommentare von Folgen des Podcasts #{id} erstellen und löschen.