diff --git a/jsonapi/api.py b/jsonapi/api.py
index <HASH>..<HASH> 100644
--- a/jsonapi/api.py
+++ b/jsonapi/api.py
@@ -278,7 +278,9 @@ class API(object):
                 duration=time.time() - time_start)
             return response
 
-        if resource.Meta.authenticators:
+        if resource.Meta.authenticators and not (
+                request.method == "GET" and
+                resource.Meta.disable_get_authentication):
             user = resource.authenticate(request)
             if user is None or not user.is_authenticated():
                 response = HttpResponse("Not Authenticated", status=401)
diff --git a/jsonapi/auth.py b/jsonapi/auth.py
index <HASH>..<HASH> 100644
--- a/jsonapi/auth.py
+++ b/jsonapi/auth.py
@@ -54,6 +54,7 @@ class Authenticator(object):
 
     class Meta:
         authenticators = []
+        disable_get_authentication = None
 
     @classmethod
     def authenticate(cls, request):
allow user to disable get authenticators and maintain access rights on the application level