fix(access): Ensure Object permission are checked when an object is having an action performed against it.
ref: #442 #454
This commit is contained in:
@ -19,7 +19,6 @@ class OrganizationMixin:
|
||||
|
||||
Args:
|
||||
obj (Model): Model of object
|
||||
obj (dict): Request data of the object being created
|
||||
|
||||
Raises:
|
||||
ValueError: When `obj` and `request` are both missing
|
||||
|
@ -116,10 +116,18 @@ class OrganizationPermissionMixin(
|
||||
|
||||
view_action = 'change'
|
||||
|
||||
obj_organization: Organization = view.get_obj_organization(
|
||||
obj = view.get_object()
|
||||
)
|
||||
|
||||
elif view.action == 'destroy':
|
||||
|
||||
view_action = 'delete'
|
||||
|
||||
obj_organization: Organization = view.get_obj_organization(
|
||||
obj = view.get_object()
|
||||
)
|
||||
|
||||
elif (
|
||||
view.action == 'list'
|
||||
):
|
||||
@ -130,6 +138,10 @@ class OrganizationPermissionMixin(
|
||||
|
||||
view_action = 'view'
|
||||
|
||||
obj_organization: Organization = view.get_obj_organization(
|
||||
obj = view.get_object()
|
||||
)
|
||||
|
||||
elif view.action == 'metadata':
|
||||
|
||||
return True
|
||||
|
Reference in New Issue
Block a user