Browse Source

ref(bug reports): change project endpoint permissions (#57386)

Michelle Zhang 1 year ago
parent
commit
bf7c9ec41b
1 changed files with 9 additions and 0 deletions
  1. 9 0
      src/sentry/feedback/endpoints/project_feedback_details.py

+ 9 - 0
src/sentry/feedback/endpoints/project_feedback_details.py

@@ -6,6 +6,7 @@ from rest_framework.response import Response
 from sentry.api.api_owners import ApiOwner
 from sentry.api.api_publish_status import ApiPublishStatus
 from sentry.api.base import region_silo_endpoint
+from sentry.api.bases.project import ProjectPermission
 from sentry.api.serializers.base import serialize
 from sentry.feedback.endpoints.base import ProjectFeedbackEndpoint
 from sentry.feedback.models import Feedback
@@ -13,6 +14,13 @@ from sentry.feedback.serializers import FeedbackSerializer
 from sentry.models.project import Project
 
 
+class ProjectFeedbackDetailsPermission(ProjectPermission):
+    scope_map = {
+        "GET": ["project:read", "project:write", "project:admin"],
+        "DELETE": ["project:read", "project:write", "project:admin"],
+    }
+
+
 @region_silo_endpoint
 class ProjectFeedbackDetailsEndpoint(ProjectFeedbackEndpoint):
     publish_status = {
@@ -20,6 +28,7 @@ class ProjectFeedbackDetailsEndpoint(ProjectFeedbackEndpoint):
         "DELETE": ApiPublishStatus.EXPERIMENTAL,
     }
     owner = ApiOwner.FEEDBACK
+    permission_classes = (ProjectFeedbackDetailsPermission,)
 
     def get(self, request: Request, project: Project, feedback: Feedback) -> Response:
         return self.respond(serialize(feedback, request.user, FeedbackSerializer()))