Object level permissions

서재환·2022년 10월 26일
0

Django

목록 보기
33/40

Custom permissions

.has_permission(self, request, view)

.has_object_permission(self, request, view, obj)

요약

permission_classes

  • 해당 변수에 정의한 값들을 돌면서 확인한다.
  • 요청이 들어왔을 때 위를 돌면서 Boolean check를 하게 되는데 정의된 값으로부터 False가 반환됐을 때 해당 요청은 권한을 얻지 못하고 더이상 순회하면서 permission check를 하지 않는다.

has_permission

  • 위 메서드는 모든 HTTP request(GET, POST, PUT, DELETE) 요청에 대해 소환된다.

  • 해당 메서드의 특징은 보편적인 권한 체크에 사용되고 요청이 특정 기준을 충족하는지를 체크한다.

has_object_permission

  • 해당 메서드의 특징은 좀더 구체적인 사항을 적어 줄 때 인스턴스와 연관된 인증인가 처리를 할 때 사용한다.

  • 해당 메서드는 has_permissionTrue를 반환했을 때 호출된다. 이 때 POST 메서드는 제외된다. GET PUT DELETE 메서드에 한해서 동작한다.

참고자료

custom permission

0개의 댓글