(ns metabase.server.auth-wrapper (:require [metabase.api.util.handlers :as handlers] [metabase.config :as config] [ring.util.response :as response])) | |
(let [bad-req (response/bad-request {:message "The auth/sso endpoint only exists in enterprise builds"
:status "ee-build-required"})]
(defn- not-enabled
[_req respond _raise]
(respond bad-req))) | |
Ring routes for auth (SAML) API endpoints. | (def ^{:arglists '([request respond raise])} ee-missing-routes
;; follows the same form as [[metabase-enterprise.sso.api.routes]]. Compojure is a bit opaque so need to manually keep
;; them in sync.
(handlers/route-map-handler
{"/auth" {"/sso" not-enabled}
"/api" {"/saml" not-enabled}})) |
Ring routes for auth (SAML) api endpoints. If enterprise is not present, will return a nicer message This needs to be injected into [[metabase.server.routes/routes]] -- not [[metabase.api.routes/routes]] !!! TODO -- should we make a TODO -- we need to feature-flag this based on the | (def routes
(if (and config/ee-available? (not *compile-files*))
(requiring-resolve 'metabase-enterprise.sso.api.routes/routes)
ee-missing-routes)) |