(ns metabase-enterprise.impersonation.middleware (:require [metabase-enterprise.impersonation.driver :as impersonation.driver] [metabase.lib.metadata :as lib.metadata] [metabase.premium-features.core :refer [defenterprise]] [metabase.query-processor.store :as qp.store])) | |
Pre-processing middleware. Adds a key to the query. Currently used solely for caching. | (defenterprise apply-impersonation :feature :advanced-permissions [query] (if-let [role (impersonation.driver/connection-impersonation-role (lib.metadata/database (qp.store/metadata-provider)))] (assoc query :impersonation/role role) query)) |