          return view.queryset
  
      def has_permission(self, request, view):
          # Workaround to ensure DjangoModelPermissions are not applied
          # to the root view when using DefaultRouter.
          if getattr(view, '_ignore_model_permissions', False):
              return True
  
 
</s> remove         if not request.user or (
           not request.user.is_authenticated and self.authenticated_users_only):
            return False

 </s> add 
        if not request.user or (
           not request.user.is_authenticated and self.authenticated_users_only):
            return False

          return view.queryset
  
      def has_permission(self, request, view):
        if not request.user or (
           not request.user.is_authenticated and self.authenticated_users_only):
            return False

          # Workaround to ensure DjangoModelPermissions are not applied
          # to the root view when using DefaultRouter.
          if getattr(view, '_ignore_model_permissions', False):
              return True
  
keep keep add keep keep keep keep keep
 Fix #8771 - Checking for authentication even if `_ignore_model_permissions = True` (#8772) 
rest_framework/permissions.py