        (let [svc (get-service app :EchoReverseService)
              echo-handler (echo-reverse svc "Prefix: ")]
          (echo-handler request)))))))
+
+(defprotocol PlumbingService
+  (call-authorization-check [this request]))
+
+(defservice plumbing-service PlumbingService
+  [[:AuthorizationService authorization-check]]
+  (call-authorization-check
+   [this request]
+   (authorization-check request)))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;; Tests

            {:keys [status body]} (app req)]
        (is (= 403 status))
        (is (re-matches #"Forbidden.*" body))))))

    [clojure.string :as str]
    [puppetlabs.ssl-utils.core :as ssl-utils]
    [puppetlabs.trapperkeeper.app :refer [get-service]]
    [puppetlabs.trapperkeeper.authorization.rules :as rules]
    [puppetlabs.trapperkeeper.authorization.testutils :refer :all]
    [puppetlabs.trapperkeeper.services :refer [defservice]]
    [puppetlabs.trapperkeeper.services.authorization.authorization-service
