diff --git a/aleksis/core/migrations/0001_initial.py b/aleksis/core/migrations/0001_initial.py
index 9999e1a6615138251c1745d4e33b3d9d404d0c7b..bdfa9da40471efcbe0b57e7f2c549bfc339d50f5 100644
--- a/aleksis/core/migrations/0001_initial.py
+++ b/aleksis/core/migrations/0001_initial.py
@@ -26,15 +26,11 @@ class Migration(migrations.Migration):
             name='GlobalPermissions',
             fields=[
                 ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('extended_data', django.contrib.postgres.fields.jsonb.JSONField(default=dict, editable=False)),
             ],
             options={
                 'permissions': (('view_system_status', 'Can view system status'), ('link_persons_accounts', 'Can link persons to accounts'), ('manage_data', 'Can manage data'), ('impersonate', 'Can impersonate'), ('search', 'Can use search'), ('change_site_preferences', 'Can change site preferences'), ('change_person_preferences', 'Can change person preferences'), ('change_group_preferences', 'Can change group preferences')),
                 'managed': False,
             },
-            managers=[
-                ('objects', django.contrib.sites.managers.CurrentSiteManager()),
-            ],
         ),
         migrations.CreateModel(
             name='AdditionalField',
diff --git a/aleksis/core/mixins.py b/aleksis/core/mixins.py
index e44caa020bdb6fb1814a3b7e10de95d72915b26b..c91887a2248f4192970f46ed9701b9a8339b126c 100644
--- a/aleksis/core/mixins.py
+++ b/aleksis/core/mixins.py
@@ -283,6 +283,16 @@ class PureDjangoModel(object):
     pass
 
 
+class GlobalPermissionModel(models.Model):
+    """Base model for global permissions.
+
+    This base model ensures that global permissions are not managed."""
+
+    class Meta:
+        abstract = True
+        managed = False
+
+
 class _ExtensibleFormMetaclass(ModelFormMetaclass):
     def __new__(cls, name, bases, dct):
         x = super().__new__(cls, name, bases, dct)
diff --git a/aleksis/core/models.py b/aleksis/core/models.py
index 8927844a47da2f30e030a9b0815e82539940d8ba..2d3020d135edd161ca64512cdd292f40f723e80b 100644
--- a/aleksis/core/models.py
+++ b/aleksis/core/models.py
@@ -34,7 +34,12 @@ from .managers import (
     GroupQuerySet,
     SchoolTermQuerySet,
 )
-from .mixins import ExtensibleModel, PureDjangoModel, SchoolTermRelatedExtensibleModel
+from .mixins import (
+    ExtensibleModel,
+    GlobalPermissionModel,
+    PureDjangoModel,
+    SchoolTermRelatedExtensibleModel,
+)
 from .tasks import send_notification
 from .util.core_helpers import get_site_preferences, now_tomorrow
 from .util.model_helpers import ICONS
@@ -820,11 +825,10 @@ class GroupType(ExtensibleModel):
         verbose_name_plural = _("Group types")
 
 
-class GlobalPermissions(ExtensibleModel):
+class GlobalPermissions(GlobalPermissionModel):
     """Container for global permissions."""
 
-    class Meta:
-        managed = False
+    class Meta(GlobalPermissionModel.Meta):
         permissions = (
             ("view_system_status", _("Can view system status")),
             ("link_persons_accounts", _("Can link persons to accounts")),