  
          # Ensure that the incoming request is permitted
          self.check_permissions(request)
          self.check_throttles(request)
  
          # Perform content negotiation and store the accepted info on the request
          neg = self.perform_content_negotiation(request)
          request.accepted_renderer, request.accepted_media_type = neg
 
</s> remove from rest_framework.authentication import TokenAuthentication, BasicAuthentication, SessionAuthentication
 </s> add from rest_framework.authentication import (
    BaseAuthentication,
    TokenAuthentication,
    BasicAuthentication,
    SessionAuthentication
)
        self.perform_authentication(request)
  
          # Ensure that the incoming request is permitted
        self.perform_authentication(request)
          self.check_permissions(request)
          self.check_throttles(request)
  
          # Perform content negotiation and store the accepted info on the request
          neg = self.perform_content_negotiation(request)
          request.accepted_renderer, request.accepted_media_type = neg
keep add keep keep keep keep keep keep
 Auth is no longer lazy.  Closes #667.

More consistent auth failure behavior. 
rest_framework/views.py