diff --git a/djangoldp/models.py b/djangoldp/models.py
index 493f3e34ae53edade8f233e2ebec8aaceefa3935..5443bd09bd1e4056cfbc009a2030342663e2548d 100644
--- a/djangoldp/models.py
+++ b/djangoldp/models.py
@@ -7,6 +7,7 @@ from django.utils.decorators import classonlymethod
 from djangoldp.permissions import LDPPermissions
 
 User._meta.rdf_type = "foaf:user"
+User._meta.owner_field = "id"
 
 
 class Model(models.Model):
diff --git a/djangoldp/permissions.py b/djangoldp/permissions.py
index d6e8e92ba96b8c6f320e042a40273e2c9f01eff5..5a08ba16b3f31cbacad3d6d495ac09cd6a729d13 100644
--- a/djangoldp/permissions.py
+++ b/djangoldp/permissions.py
@@ -36,7 +36,7 @@ class LDPPermissions(BasePermission):
             return anonymous_perms
 
         else:
-            if obj and hasattr(model._meta, 'owner_field') and getattr(obj, getattr(model._meta, 'owner_field')) == user:
+            if obj and hasattr(model._meta, 'owner_field') and (getattr(obj, getattr(model._meta, 'owner_field')) == user or getattr(obj, getattr(model._meta, 'owner_field')) == user.id):
                 return owner_perms
 
             else:
@@ -82,6 +82,7 @@ class LDPPermissions(BasePermission):
         """
         model = view.model
         perms = self.get_permissions(request.method, model)
+
         try:
             obj = view.model.resolve_id(request._request.path)
         except: