           :num-total-rows (count (:workspaces props))
           :->row (fn [ws]
                    (let [ws-name (get-workspace-name-string ws)
-                         ws-href (let [x (ws "workspace")] (str (x "namespace") ":" (x "name")))]
-                     [{:name ws-name :href ws-href :status (:status ws)}
-                      {:name ws-name :href ws-href :status (:status ws)
+                         ws-href (let [x (ws "workspace")] (str (x "namespace") ":" (x "name")))
+                         disabled? (= (ws "accessLevel") "NO ACCESS")]
+                     [{:name ws-name :href ws-href :status (:status ws) :disabled? disabled?}
+                      {:name ws-name :href ws-href :status (:status ws) :disabled? disabled?
                        :protected? (get-in ws ["workspace" "realm"])}
                       (get-workspace-description ws)
-                      (get-in ws ["accessLevel"])
+                      (ws "accessLevel")
                       nil]))}]]))})
 
 

  {:render
   (fn [{:keys [props]}]
     (let [{:keys [nav-context data]} props
           {:keys [href status protected?]} data
           color (style/color-for-status status)]
       [:a {:href (nav/create-href nav-context href)
            :style {:display "block"
                    :backgroundColor color
                    :color "white" :textDecoration "none"
                    :height (- row-height-px 4)}}
        (when protected?
          [:span {:style {:display "block" :position "relative"}}
           [:span {:style {:display "block" :position "absolute" :left -16 :top 17

(ns org.broadinstitute.firecloud-ui.page.workspaces-list
  (:require
    [clojure.string :refer [split join split-lines]]
    [dmohs.react :as react]
    [org.broadinstitute.firecloud-ui.common :as common]
    [org.broadinstitute.firecloud-ui.common.components :as comps]
