diff --git a/aleksis/apps/alsijil/rules.py b/aleksis/apps/alsijil/rules.py
index c9321c4e1693414142f703b6a69d0d601c5b444b..789f299b4035921493b39ceb2e0082febb7f158a 100644
--- a/aleksis/apps/alsijil/rules.py
+++ b/aleksis/apps/alsijil/rules.py
@@ -127,3 +127,19 @@ add_perm("alsijil.edit_excusetype", edit_excusetype_predicate)
 # Delete excuse type
 delete_excusetype_predicate = has_person & has_global_perm("alsijil.delete_excusetype")
 add_perm("alsijil.delete_excusetype", delete_excusetype_predicate)
+
+# View extra mark list
+view_extramark_predicate = has_person & has_global_perm("alsijil.view_extramark")
+add_perm("alsijil.view_extramark", view_extramark_predicate)
+
+# Add extra mark
+add_extramark_predicate = has_person & has_global_perm("alsijil.add_extramark")
+add_perm("alsijil.add_extramark", add_extramark_predicate)
+
+# Edit extra mark
+edit_extramark_predicate = has_person & has_global_perm("alsijil.change_extramark")
+add_perm("alsijil.edit_extramark", edit_extramark_predicate)
+
+# Delete extra mark
+delete_extramark_predicate = has_person & has_global_perm("alsijil.delete_extramark")
+add_perm("alsijil.delete_excusetype", delete_extramark_predicate)
diff --git a/aleksis/apps/alsijil/views.py b/aleksis/apps/alsijil/views.py
index 0bbd6becaf8e19027b0e65031a5efde496e6e9bc..aa4330cecb93d6bb0f778787a10559ae51c5d254 100644
--- a/aleksis/apps/alsijil/views.py
+++ b/aleksis/apps/alsijil/views.py
@@ -496,7 +496,7 @@ class ExtraMarkListView(SingleTableView, PermissionRequiredMixin):
 
     model = ExtraMark
     table_class = ExtraMarkTable
-    permission_required = "core.view_extramark"
+    permission_required = "alsijil.view_extramark"
     template_name = "alsijil/extra_mark/list.html"
 
 
@@ -505,7 +505,7 @@ class ExtraMarkCreateView(AdvancedCreateView, PermissionRequiredMixin):
 
     model = ExtraMark
     form_class = ExtraMarkForm
-    permission_required = "core.create_extramark"
+    permission_required = "alsijil.create_extramark"
     template_name = "alsijil/extra_mark/create.html"
     success_url = reverse_lazy("extra_marks")
     success_message = _("The extra mark has been created.")
@@ -516,7 +516,7 @@ class ExtraMarkEditView(AdvancedEditView, PermissionRequiredMixin):
 
     model = ExtraMark
     form_class = ExtraMarkForm
-    permission_required = "core.edit_extramark"
+    permission_required = "alsijil.edit_extramark"
     template_name = "alsijil/extra_mark/edit.html"
     success_url = reverse_lazy("extra_marks")
     success_message = _("The extra mark has been saved.")
@@ -526,7 +526,7 @@ class ExtraMarkDeleteView(AdvancedDeleteView, PermissionRequiredMixin, RevisionM
     """Delete view for extra marks"""
 
     model = ExtraMark
-    permission_required = "core.delete_extramark"
+    permission_required = "alsijil.delete_extramark"
     template_name = "core/pages/delete.html"
     success_url = reverse_lazy("extra_marks")
     success_message = _("The extra mark has been deleted.")