aboutsummaryrefslogtreecommitdiff
path: root/src/Lib.hs
diff options
context:
space:
mode:
authoradambrangenberg <adabran06@gmail.com>2025-12-24 07:18:04 +0100
committeradambrangenberg <adabran06@gmail.com>2025-12-24 07:18:04 +0100
commit4da55d6434f6077f35466c9c0dfe3c29ee33f984 (patch)
tree2e5935721696c26a9be09b24b5a2457d71398b0d /src/Lib.hs
parent3e2060422ed51096fc71148c55c47d5767593846 (diff)
Protecting CapabilitiesEndpoint via Auth
Diffstat (limited to 'src/Lib.hs')
-rw-r--r--src/Lib.hs13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/Lib.hs b/src/Lib.hs
index d430d9c..a0900ad 100644
--- a/src/Lib.hs
+++ b/src/Lib.hs
@@ -3,6 +3,7 @@
{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE OverloadedLabels #-}
{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE OverloadedStrings #-}
module Lib
( startApp
@@ -11,24 +12,26 @@ module Lib
, type (:<|>)
) where
--- Servant
import Network.Wai
import Network.Wai.Handler.Warp
import Network.Wai.Middleware.RequestLogger (logStdoutDev)
import Servant
+import Servant.Server.Experimental.Auth (AuthHandler)
--- Utils
+import Auth (authHandler)
import Cors
-
--- Endpoints
import Endpoints.APILib
import Endpoints.ServerLib
+import Data.User (User (..))
startApp :: IO ()
startApp = run 8080 (logStdoutDev app)
app :: Application
-app = corsMiddleware $ serve api server
+app = corsMiddleware $ serveWithContext api authContext server
+
+authContext :: Context '[AuthHandler Request User]
+authContext = authHandler :. EmptyContext
api :: Proxy API
api = Proxy