Library Roles and Permissions
This document outlines the proposed roles and permissions structure for managing libraries within the system. It serves as a working draft to define user access levels and the actions they can perform. Changes and refinements may be made as requirements evolve.
Permissions
Create Library
Action: create_library
Resource Type: organization
Description: Grants the ability to create a new library in the system, with the creator automatically receiving admin rights over the library.
Edit Library
Action: edit_library
Resource Type: library
Description:
Create content (components or units)
Edit content in draft mode.
Edit Library Name
Manage Tags
Action: manage_tags
Resource Type: library
Description:
Add tags to content.
Remove a tag from content.
Delete Library
Action: delete_library
Resource Type: library
Description: Grants permission to permanently delete a library and all its contents.
Delete Content
Action: delete_content
Resource Type: library
Description: Grants permission to delete individual components or units within a library.
Note: This does not include collections.
Import Content from Course
Action: import_content
Resource Type: library
Description: Grants permission to import content from an existing course into a library.
View Library
Action: view_library
Resource Type: library
Description:
Search for content in a library.
View content in a library.
Filter content in a library.
Sort content in a library.
Filter content by tag
View content in a collection.
View the list of collections.
Publish Library
Action: publish_library
Resource Type: library
Description:
Publish a library
Change the library from draft mode to published.
Publish Content
Action: publish_content
Resource Type: library
Description:
Publish content, making it available for reuse.
Change content from draft mode to published.
Manage Library Team
Action: manage_library_team
Resource Type: library
Description:
Add and remove users from a library.
Assign roles to users within a library.
View Library Team
Action: view_library_team
Resource Type: library
Description: Grants permission to view the list of users who have access to the library.
Reuse Library Content
Action: reuse_library
Resource Type: library
Description: It allows the use of published content from a library inside a course.
Create Collection
Action: create_collection
Resource Type: library
Description: Create new collections within a library.
Edit Collections
Action: edit_collection
Resource Type: library
Description:
Add content to existing collections.
Remove content from existing collections.
Delete Collections
Action: delete_collection
Resource Type: library
Description: Delete entire collections from a library.
Roles
Library Admin
Description: The Library Admin has full control over the library, including managing users, modifying content, and handling publishing workflows. They ensure content is properly maintained and accessible as needed.
Permissions:
Create Library
Delete Library
Edit Library
Delete Content
Publish Library
Publish content
Manage Tags
Manage Library Team
View Library Team
View Library
Reuse Library Content
Create Collection
Edit Collection
Delete Collection
Library Author
Description: The Library Author is responsible for creating, editing, and publishing content within a library. They have flexibility in content management but cannot delete libraries or manage roles.
Permissions:
View Library Team
Delete content
Edit Library
Manage Tags
Import Content from Course
Publish Content
View Library
Reuse Library Content
Create Collection
Edit Collection
Delete Collection
Library Auditor
Description: The Library Auditor can view and browse content but cannot make modifications.
Permissions:
View Library
View Library Team
Library User
Description: The Library User can view and reuse content but cannot edit or delete anything.
Permissions:
View Library Team
View Library
Reuse Library Content