openedx-authz permission list

openedx-authz permission list

WIP: This document is a work in progress.


Here we document the permissions from a technical standpoint, listing the permissions as they are defined in openedx-authz or other modules code.

Existing openedx-authz permissions

At the moment of writing, these are the permissions that are already implemented on openedx-authz for the libraries v2 feature:

  • content_libraries.view_library

  • content_libraries.manage_library_tags

  • content_libraries.delete_library

  • content_libraries.edit_library_content

  • content_libraries.publish_library_content

  • content_libraries.reuse_library_content

  • content_libraries.view_library_team

  • content_libraries.manage_library_team

  • content_libraries.create_library_collection

  • content_libraries.edit_library_collection

  • content_libraries.delete_library_collection

Proposed new permissions

These are the permissions being proposed for the AuthZ for Course authoring project:

This list was derived from a technical perspective given the findings of the technical discovery with the objective of meeting requirements while keeping implementation complexity as low as possible.

The following list was also used as reference: https://openedx.atlassian.net/wiki/spaces/OEPM/pages/4945838087

Please note, we are starting with a simplified list of permissions, trying to be granular enough for the objectives of this project but not too granular as to make the implementation too complex and time consuming.

If required, granularity can be extended as we discover specific needs for the different parts of the course authoring process.

Section

Permission

Description

Screenshots

Section

Permission

Description

Screenshots

Course list / Course outline

courses.view_course

Allows viewing a course on the studio courses list and the course outline (read only)

 

courses.create_course

Allows creating a new course

 

courses.delete_course

Allows deleting a course.
WON’T BE IMPLEMENTED AT THIS TIME

This is not a currently supported action in studio.

Course outline / Unit

courses.edit_course_content

Allows editing course content, including:

Edit/Duplicate/Delete/Create Section

Edit/Create/Delete Sub-Section

Edit/Create/Delete Xblocks

 

courses.publish_course_content

Publish course content, including:

Publish Section and Sub-Section changes

 

Library Updates

courses.manage_library_updates

Gives full access to the Library Updates page and functionality

 

Course Updates

courses.view_course_updates

View contents of the course updates page, including course updates and handouts (read only)

 

courses.manage_course_updates

Manage course updates and handouts, create, edit, delete.

Pages & Resources

courses.view_pages_and_resources

View pages and resources section (read only)

 

courses.manage_pages_and_resources

Do any action in the pages and resources section, including enabling and disabling features like the Wiki and Discussions, changing configurations, Creating and editing Textbooks and Custom pages.

Files / Files modal

courses.view_files

View the Files section and list all files (read only)

 

courses.create_files

Create and upload new files

courses.delete_files

Delete existing files

courses.edit_files

Do Non destructive file actions on files, like Lock/Unlock

Schedule & Details

courses.view_schedule_and_details

View Schedule & Details page (read only)

 

course.edit_schedule

Edit course schedule

course.edit_details

Edit course details, includes Course Summary, Course Pacing, Course Details, Course Pre requisite.

Grading

courses.view_grading_settings

View Grading page (read only)

 

course.edit_grading_settings

Full edit access to the Grading page

Course Team*

courses.view_course_team

View the course team roster

New Admin Console view for Course Team

courses.manage_course_team

Access to the Course Team management in the Admin Console (new development)

Group Configurations

courses.manage_group_configurations

Gives full access to the Group configurations page and functionality

 

Advanced Settings

courses.manage_advanced_settings

Gives full access to the Advanced Settings page and functionality

 

Certificates

courses.manage_certificates

Gives full access to the Certificates page and functionality

 

Import

courses.import_course

Gives full access to the Import course page and functionality.

Implies courses.edit_course_content, courses.publish_course_content, and most, if not all, the rest of the edit permissions.

 

Export Course

courses.export_course

Gives full access to the Export Course page and functionality

 

Export Tags

courses.export_tags

Gives full access to the Export Tags page and functionality

 

View Checklists

courses.view_checklists

Gives full access to the View Checklists page

 

Instructor Dashboard

courses.view_instructor_dashboard

Gives full access to the Instructor Dashboard

 

Tags and Taxonomies

courses.manage_tags

Create, edit, delete tags

 

courses.manage_taxonomies

Create, edit, delete taxonomies

Observations

The new instructor dashboard, under Membership > Course Team Management should have a link to manage course team admin console, which should be hidden if courses.manage_course_team is not allowed -> sync with Instructor Dashboard team.

Existing Course Team Management section under Instructor Dashboard. Please note that it combines both Course Team Management (as seen under studio), and the Discussions user management.