Cleans imports in Middleware and define exports in Auth

This commit is contained in:
Diogo Biazus
2015-10-16 15:56:07 -04:00
parent 275002e25d
commit 31f1a30d6f
3 changed files with 11 additions and 16 deletions
-1
View File
@@ -46,7 +46,6 @@ import qualified Hasql as H
import qualified Hasql.Backend as B
import qualified Hasql.Postgres as P
import PostgREST.Auth
import PostgREST.Config (AppConfig (..))
import PostgREST.Parsers
import PostgREST.PgQuery
+9 -8
View File
@@ -1,19 +1,19 @@
{-# LANGUAGE FlexibleContexts #-}
module PostgREST.Auth where
module PostgREST.Auth (
DbRole
, LoginAttempt (..)
, setRole
, setJWTEnv
) where
import Control.Applicative
import Control.Monad (mzero)
import Data.Aeson
import Data.Map (lookup, fromList, toList)
import Data.Map (fromList, toList)
import Data.Monoid
import Data.String.Conversions (cs)
import Data.Maybe (isNothing)
import Data.Text (Text)
import qualified Data.Vector as V
import qualified Hasql as H
import qualified Hasql.Backend as B
import qualified Hasql.Postgres as P
import PostgREST.PgQuery (pgFmtLit)
import Prelude
import qualified Web.JWT as JWT
@@ -57,8 +57,9 @@ setDBEnv maybeClaims =
(map setVar . toList) <$> maybeClaims
where
setVar ("role", String val) = setRole val
setVar (key, String val) = "set local postgrest." <> key <> " = " <> cs (pgFmtLit val) <> ";"
setVar (key, String val) = "set local postgrest.claims" <> key <> " = " <> cs (pgFmtLit val) <> ";"
setRole :: Text -> Text
setRole role = "set local role " <> cs (pgFmtLit role) <> ";"
jwtClaims :: Text -> Text -> Maybe JWT.ClaimsMap
+2 -7
View File
@@ -10,11 +10,9 @@ import Data.String.Conversions (cs)
import qualified Hasql as H
import qualified Hasql.Postgres as P
import Network.HTTP.Types (RequestHeaders)
import Network.HTTP.Types.Header (hAccept, hAuthorization,
hLocation)
import Network.HTTP.Types.Status (status301, status400, status401,
status415)
import Network.HTTP.Types.Status (status301, status400, status415)
import Network.URI (URI (..), parseURI)
import Network.Wai (Application, Request (..),
Response, isSecure, rawPathInfo,
@@ -24,14 +22,11 @@ import Network.Wai.Middleware.Cors (cors)
import Network.Wai.Middleware.Gzip (def, gzip)
import Network.Wai.Middleware.Static (only, staticPolicy)
import Codec.Binary.Base64.String (decode)
import PostgREST.App (contentTypeForAccept)
import PostgREST.Auth (DbRole, LoginAttempt (..),
setRole, setJWTEnv)
import PostgREST.Auth (setRole, setJWTEnv)
import PostgREST.Config (AppConfig (..), corsPolicy)
import Prelude hiding(concat)
import qualified Web.JWT as JWT
import qualified Data.Vector as V
import qualified Hasql.Backend as B