feat: introduce authz_permission_required decorator#38156
feat: introduce authz_permission_required decorator#38156dwong2708 wants to merge 7 commits intoopenedx:masterfrom
Conversation
|
Thanks for the pull request, @dwong2708! This repository is currently maintained by Once you've gone through the following steps feel free to tag them in a comment and let them know that your changes are ready for engineering review. 🔘 Get product approvalIf you haven't already, check this list to see if your contribution needs to go through the product review process.
🔘 Provide contextTo help your reviewers and other members of the community understand the purpose and larger context of your changes, feel free to add as much of the following information to the PR description as you can:
🔘 Get a green buildIf one or more checks are failing, continue working on your changes until this is no longer the case and your build turns green. DetailsWhere can I find more information?If you'd like to get more details on all aspects of the review process for open source pull requests (OSPRs), check out the following resources: When can I expect my changes to be merged?Our goal is to get community contributions seen and reviewed as efficiently as possible. However, the amount of time that it takes to review and merge a PR can vary significantly based on factors such as:
💡 As a result it may take up to several weeks or months to complete a review and merge your PR. |
bce4a4a to
1c4fe82
Compare
rodmgwgu
left a comment
There was a problem hiding this comment.
Looking good, just one logic change and some minor comments.
- Add decorator to enforce AuthZ course permissions - Apply it to the Course Quality view
b4cdb3f to
582c8bc
Compare
rodmgwgu
left a comment
There was a problem hiding this comment.
Looks good, thanks! Tested in my local and works as expected.
Resolves openedx/openedx-authz#200
Description
This PR introduces a new decorator to enforce permissions using the new AuthZ system and applies it to the Course Quality and Course Validations endpoints.
The decorator centralizes the authorization logic for course authoring APIs by checking permissions through the AuthZ service, with an optional fallback to the legacy permission system during the migration period.
As part of implementing the new permissions for the Checklist section of the course, the decorator is now applied to the following endpoints:
This ensures that access to checklist-related functionality is properly controlled by the new permission model.
Changes
Testing
Context
This change is part of the work to support RBAC/AuthZ permissions for the Checklist section in course authoring.