diff --git a/forums/admin.py b/forums/admin.py
index e8871f3936df9173ee6d3d6b720918adbc89ce9a..d2eb2e42b9ff67ed8db407396905be7734f70ad4 100644
--- a/forums/admin.py
+++ b/forums/admin.py
@@ -4,10 +4,12 @@ __license__ = "AGPL v3"
 
 from django.contrib import admin
 
+from guardian.admin import GuardedModelAdmin
+
 from .models import Forum, Post
 
 
-class ForumAdmin(admin.ModelAdmin):
+class ForumAdmin(GuardedModelAdmin):
     prepopulated_fields = {'slug': ('name',)}
     search_fields = ['name',]
 
diff --git a/forums/managers.py b/forums/managers.py
index 9faa94c4103c074f2cbe104be96848b6b1360cc2..2292eafefc37d588340724740854a16ce462870f 100644
--- a/forums/managers.py
+++ b/forums/managers.py
@@ -6,6 +6,7 @@ from django.db import models
 
 
 class ForumQuerySet(models.QuerySet):
+
     def anchors(self):
         """Return only the Forums which do not have a parent."""
         return self.filter(parent_object_id__isnull=True)
diff --git a/forums/migrations/0002_auto_20190306_0807.py b/forums/migrations/0002_auto_20190306_0807.py
new file mode 100644
index 0000000000000000000000000000000000000000..6e5c4f9b1af14c1a1abb3b0ab36266a1a7f35833
--- /dev/null
+++ b/forums/migrations/0002_auto_20190306_0807.py
@@ -0,0 +1,19 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.4 on 2019-03-06 07:07
+from __future__ import unicode_literals
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('forums', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.AlterModelOptions(
+            name='forum',
+            options={'ordering': ['name'], 'permissions': [('can_view_forum', 'Can view Forum')]},
+        ),
+    ]
diff --git a/forums/models.py b/forums/models.py
index e2d05d4a5228f90164132fb03d7cb317556c83db..dcd9dc75bb7c4879fc31b1c9511a146596c3e556 100644
--- a/forums/models.py
+++ b/forums/models.py
@@ -48,6 +48,9 @@ class Forum(models.Model):
 
     class Meta:
         ordering = ['name',]
+        permissions = [
+            ('can_view_forum', 'Can view Forum'),
+        ]
 
     def __str__(self):
         return self.slug
diff --git a/forums/templates/forums/forum_detail.html b/forums/templates/forums/forum_detail.html
index 0acdea979a661ddf9be1825cc7f5e2fb37d6f37d..0c9f47b070c4aa233340d1922b137bb74b01207b 100644
--- a/forums/templates/forums/forum_detail.html
+++ b/forums/templates/forums/forum_detail.html
@@ -15,11 +15,11 @@
 <div class="row">
   <div class="col-12">
     <h3 class="highlight">{{ forum.name }}</h3>
-
+    <p>Visible to:</p>
     {% if perms.forums.can_add_forum %}
-    <p>
-      <a href="{% url 'forums:forum_create' parent_model='forum' parent_id=forum.id %}">Create a (sub)Forum within this one</a>
-    </p>
+    <ul>
+      <li><a href="{% url 'forums:forum_create' parent_model='forum' parent_id=forum.id %}">Create a (sub)Forum within this one</a></li>
+    </ul>
     {% endif %}
 
     {% for post in forum.posts.all %}
diff --git a/forums/templates/forums/forum_list.html b/forums/templates/forums/forum_list.html
index 9abf98a2f91c4a04b13af8c5e90563420adede70..c3176627a182078c8783499fdfa3b9bb638165f2 100644
--- a/forums/templates/forums/forum_list.html
+++ b/forums/templates/forums/forum_list.html
@@ -17,9 +17,11 @@
   <div class="col-12">
 
     <h3 class="highlight">Forums</h3>
+    {% if perms.forums.can_add_forum %}
     <ul>
       <li><a href="{% url 'forums:forum_create' %}">Create a new Forum</a></li>
     </ul>
+    {% endif %}
 
     <div class="card-columns">
       {% for forum in object_list %}
@@ -40,6 +42,8 @@
 	  {% endif %}
 	</div>
       </div>
+      {% empty %}
+      <p>No visible Forums found.</p>
       {% endfor %}
     </div>
   </div>
@@ -67,7 +71,7 @@
 	</tr>
 	{% empty %}
 	<tr>
-	  <td>No Forum defined</td>
+	  <td>No visible Posts found.</td>
 	</tr>
 	{% endfor %}
       </tbody>
diff --git a/forums/views.py b/forums/views.py
index d97b6df11e95e6cd283c25ded56a9dfd8ecb8dc1..99402400b2cd5889b6dbc57d9440f218e2d1a7b2 100644
--- a/forums/views.py
+++ b/forums/views.py
@@ -9,6 +9,8 @@ from django.views.generic.detail import DetailView
 from django.views.generic.edit import CreateView
 from django.views.generic.list import ListView
 
+from guardian.shortcuts import get_objects_for_user
+
 from .models import Forum, Post
 from .forms import ForumForm, PostForm
 
@@ -45,10 +47,9 @@ class ForumListView(ListView):
     model = Forum
     template_name = 'forum_list.html'
 
-    def get_context_data(self, *args, **kwargs):
-        context = super().get_context_data(*args, **kwargs)
-        context['latest_'] = Forum.objects.order_by
-        return context
+    def get_queryset(self):
+        queryset = get_objects_for_user(self.request.user, 'forums.can_view_forum')
+        return queryset
 
 
 class PostCreateView(CreateView):