Skip to content

验证 & 授权

Castopod 使用 codeigniter/shield 处理身份验证和授权 与自定义规则。 角色和权限 在两个级别上定义: Roles and permissions are defined at two levels:

  1. 实例范围
  2. 每个播客

1. 实例范围的角色和权限

实例角色

roledescriptionpermissions
超级管理员拥有对 Castopod 的完全控制。admin.*, plugins.*, podcasts.*, users.manage, persons.manage, pages.manage, fediverse.manage-blocks
管理管理 Castopod 的内容。podcasts.create, podcasts.import, persons.manage, pages.manage
播客Castopod 的普通用户。admin.access

实例权限

permissiondescription
admin.access可以访问 Castopod 管理区域。
admin.settings可以访问 Castopod 设置。
plugins.manageAuth.instance_permissions.plugins.manage
users.manage可以管理 Castopod 用户。
persons.manage可以管理人员。
pages.manage可以管理页面。
podcasts.view可以查看所有播客。
podcasts.create可以创建新播客。
podcasts.import可以导入播客。
fediverse.manage-blocks可以阻止联邦宇宙参与者/域与 Castopod 交互。

2. 每个播客角色与权限

每个播客角色

roledescriptionpermissions
管理员完全控制播客 #{id}。*
编辑管理播客 #{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
作者管理播客 #{id} 的内容,但不能发布。view, manage-persons, episodes.view, episodes.create, episodes.edit, episodes.manage-persons, episodes.manage-clips
访客播客 #{id} 的普通贡献者。view, episodes.view

每个播客权限

permissiondescription
view可以查看播客 #{id} 的仪表板和分析。
edit可以编辑播客 #{id}。
delete可以删除播客 #{id}。
manage-import可以同步导入的播客 #{id}。
manage-persons可以管理播客 #{id} 的订阅。
manage-subscriptions可以管理播客 #{id} 的订阅。
manage-contributors可以管理播客 #{id} 的贡献者。
manage-platforms可以设置/删除播客 #{id} 的平台链接。
manage-publications可以发布播客 #{id}。
manage-notifications可以查看播客 #{id} 的通知并将其标记为已读。
interact-as可以在播客 #{id} 进行互动,以收藏、分享或回复帖子。
episodes.view可以查看播客 #{id} 的仪表板和分析。
episodes.create可以为播客 #{id} 创建剧集。
episodes.edit可以编辑播客 #{id} 的剧集。
episodes.delete可以删除播客 #{id} 的剧集。
episodes.manage-persons可以管理播客 #{id} 的剧集人。
episodes.manage-clips可以管理播客 #{id} 的视频剪辑或声音片段。
episodes.manage-publications可以发布/取消发布播客 #{id} 的剧集和帖子。
episodes.manage-comments可以创建/删除播客 #{id} 的剧集评论。