diff --git a/app/controllers/file.php b/app/controllers/file.php
index e7378aab2cd2e475fa4ed43195cea890c6c9a1c8..4895eabc4a01ef30b9cf39722562a2ecad4da57e 100644
--- a/app/controllers/file.php
+++ b/app/controllers/file.php
@@ -503,7 +503,11 @@ class FileController extends AuthenticatedController
 
         $this->folder = $this->file->getFoldertype();
 
-        if (!$this->folder || !$this->folder->isFileEditable($this->file->getId(), $GLOBALS['user']->id)) {
+        if (
+            !$this->folder
+            || !$this->folder->isFileEditable($this->file->getId(), $GLOBALS['user']->id)
+            || !$GLOBALS['perm']->have_perm(Config::get()->OER_PUBLIC_STATUS)
+        ) {
             throw new AccessDeniedException();
         }
 
diff --git a/lib/filesystem/StandardFile.php b/lib/filesystem/StandardFile.php
index 371f041669159e4311cf47439ad55ea364fe7c94..4547d37c0f7af2e93da7bec74366d8a92d1f8582 100644
--- a/lib/filesystem/StandardFile.php
+++ b/lib/filesystem/StandardFile.php
@@ -294,7 +294,11 @@ class StandardFile implements FileType, ArrayAccess, StandardFileInterface
                 'link-to-clipboard'
             );
         }
-        if ($this->isEditable($GLOBALS['user']->id) && Config::get()->OERCAMPUS_ENABLED) {
+        if (
+            $this->isEditable($GLOBALS['user']->id)
+            && Config::get()->OERCAMPUS_ENABLED
+            && $GLOBALS['perm']->have_perm(Config::get()->OER_PUBLIC_STATUS)
+        ) {
             $actionMenu->addLink(
                 URLHelper::getURL('dispatch.php/file/share_oer/' . $this->fileref->id),
                 _('Im OER Campus veröffentlichen'),