   [fname user ^String root-dir is-daemon search num-matches offset callback origin]
   (let [file (.getCanonicalFile (File. root-dir fname))]
     (if (.exists file)
-      (if (or (blank? (*STORM-CONF* UI-FILTER))
-            (authorized-log-user? user fname *STORM-CONF*))
+      (if (or is-daemon
+            (or (blank? (*STORM-CONF* UI-FILTER))
+              (authorized-log-user? user fname *STORM-CONF*)))
         (let [num-matches-int (if num-matches
                                 (try-parse-int-param "num-matches"
                                   num-matches))

                          (filter #(.contains % grep))
                          (string/join "\n"))
                     log-string)])
            (let [pager-data (if (is-txt-file fname) (pager-links fname start length file-length) nil)]
              (html (concat (search-file-form fname "no")
                            (log-file-selection-form reordered-files-str "log") ; list all files for this topology
                            pager-data

                        (filter #(.contains % grep))
                        (string/join "\n"))
                   log-string)])
          (let [pager-data (if (is-txt-file fname) (pager-links fname start length file-length "daemonlog") nil)]
            (html (concat (search-file-form fname "yes")
                          (log-file-selection-form reordered-files-str "daemonlog") ; list all daemon logs
                          pager-data
