backend-0.1.0.0
Safe HaskellNone
LanguageHaskell2010

Server.Auth

Synopsis

Documentation

type AuthMethod = '[Cookie] Source #

Cookie means that Auth is implemented via two Cookies. One HTTP-only JWT Cookie, which is managed by the browser and a XSRF Cookie, which has to be mirrored in a "X-XSRF-TOKEN" Header

data Token Source #

Constructors

Token 

Instances

Instances details
FromJSON Token Source # 
Instance details

Defined in Server.Auth

Methods

parseJSON :: Value -> Parser Token

parseJSONList :: Value -> Parser [Token]

omittedField :: Maybe Token

ToJSON Token Source # 
Instance details

Defined in Server.Auth

Methods

toJSON :: Token -> Value

toEncoding :: Token -> Encoding

toJSONList :: [Token] -> Value

toEncodingList :: [Token] -> Encoding

omitField :: Token -> Bool

Generic Token Source # 
Instance details

Defined in Server.Auth

Associated Types

type Rep Token 
Instance details

Defined in Server.Auth

type Rep Token = D1 ('MetaData "Token" "Server.Auth" "backend-0.1.0.0-2H73EnUlGVcEtlIi2XNQz3" 'False) (C1 ('MetaCons "Token" 'PrefixI 'True) (S1 ('MetaSel ('Just "subject") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UserID) :*: S1 ('MetaSel ('Just "isSuperadmin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))

Methods

from :: Token -> Rep Token x #

to :: Rep Token x -> Token #

FromJWT Token Source # 
Instance details

Defined in Server.Auth

Methods

decodeJWT :: ClaimsSet -> Either Text Token

ToJWT Token Source # 
Instance details

Defined in Server.Auth

Methods

encodeJWT :: Token -> ClaimsSet

type Rep Token Source # 
Instance details

Defined in Server.Auth

type Rep Token = D1 ('MetaData "Token" "Server.Auth" "backend-0.1.0.0-2H73EnUlGVcEtlIi2XNQz3" 'False) (C1 ('MetaCons "Token" 'PrefixI 'True) (S1 ('MetaSel ('Just "subject") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UserID) :*: S1 ('MetaSel ('Just "isSuperadmin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))

data UserLoginData Source #

Constructors

UserLoginData 

Instances

Instances details
FromJSON UserLoginData Source # 
Instance details

Defined in Server.Auth

Methods

parseJSON :: Value -> Parser UserLoginData

parseJSONList :: Value -> Parser [UserLoginData]

omittedField :: Maybe UserLoginData

Generic UserLoginData Source # 
Instance details

Defined in Server.Auth

Associated Types

type Rep UserLoginData 
Instance details

Defined in Server.Auth

type Rep UserLoginData = D1 ('MetaData "UserLoginData" "Server.Auth" "backend-0.1.0.0-2H73EnUlGVcEtlIi2XNQz3" 'False) (C1 ('MetaCons "UserLoginData" 'PrefixI 'True) (S1 ('MetaSel ('Just "loginEmail") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "loginPassword") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))
ToSchema UserLoginData Source # 
Instance details

Defined in Server.Auth

Methods

declareNamedSchema :: Proxy UserLoginData -> Declare (Definitions Schema) NamedSchema

type Rep UserLoginData Source # 
Instance details

Defined in Server.Auth

type Rep UserLoginData = D1 ('MetaData "UserLoginData" "Server.Auth" "backend-0.1.0.0-2H73EnUlGVcEtlIi2XNQz3" 'False) (C1 ('MetaCons "UserLoginData" 'PrefixI 'True) (S1 ('MetaSel ('Just "loginEmail") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "loginPassword") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))

data UserRegisterData Source #

Instances

Instances details
FromJSON UserRegisterData Source # 
Instance details

Defined in Server.Auth

Generic UserRegisterData Source # 
Instance details

Defined in Server.Auth

Associated Types

type Rep UserRegisterData 
Instance details

Defined in Server.Auth

type Rep UserRegisterData = D1 ('MetaData "UserRegisterData" "Server.Auth" "backend-0.1.0.0-2H73EnUlGVcEtlIi2XNQz3" 'False) (C1 ('MetaCons "UserRegisterData" 'PrefixI 'True) ((S1 ('MetaSel ('Just "registerName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "registerEmail") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)) :*: (S1 ('MetaSel ('Just "registerPassword") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "groupID") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe GroupID)))))
ToSchema UserRegisterData Source # 
Instance details

Defined in Server.Auth

Methods

declareNamedSchema :: Proxy UserRegisterData -> Declare (Definitions Schema) NamedSchema

type Rep UserRegisterData Source # 
Instance details

Defined in Server.Auth

type Rep UserRegisterData = D1 ('MetaData "UserRegisterData" "Server.Auth" "backend-0.1.0.0-2H73EnUlGVcEtlIi2XNQz3" 'False) (C1 ('MetaCons "UserRegisterData" 'PrefixI 'True) ((S1 ('MetaSel ('Just "registerName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "registerEmail") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)) :*: (S1 ('MetaSel ('Just "registerPassword") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "groupID") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe GroupID)))))

data UserUpdate Source #

Constructors

UserUpdate 

Instances

Instances details
FromJSON UserUpdate Source # 
Instance details

Defined in Server.Auth

Methods

parseJSON :: Value -> Parser UserUpdate

parseJSONList :: Value -> Parser [UserUpdate]

omittedField :: Maybe UserUpdate

ToJSON UserUpdate Source # 
Instance details

Defined in Server.Auth

Methods

toJSON :: UserUpdate -> Value

toEncoding :: UserUpdate -> Encoding

toJSONList :: [UserUpdate] -> Value

toEncodingList :: [UserUpdate] -> Encoding

omitField :: UserUpdate -> Bool

Generic UserUpdate Source # 
Instance details

Defined in Server.Auth

Associated Types

type Rep UserUpdate 
Instance details

Defined in Server.Auth

type Rep UserUpdate = D1 ('MetaData "UserUpdate" "Server.Auth" "backend-0.1.0.0-2H73EnUlGVcEtlIi2XNQz3" 'False) (C1 ('MetaCons "UserUpdate" 'PrefixI 'True) (S1 ('MetaSel ('Just "newName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "newEmail") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text))))
ToSchema UserUpdate Source # 
Instance details

Defined in Server.Auth

Methods

declareNamedSchema :: Proxy UserUpdate -> Declare (Definitions Schema) NamedSchema

type Rep UserUpdate Source # 
Instance details

Defined in Server.Auth

type Rep UserUpdate = D1 ('MetaData "UserUpdate" "Server.Auth" "backend-0.1.0.0-2H73EnUlGVcEtlIi2XNQz3" 'False) (C1 ('MetaCons "UserUpdate" 'PrefixI 'True) (S1 ('MetaSel ('Just "newName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "newEmail") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text))))

Orphan instances

HasOpenApi (Auth auths a :> api) => HasOpenApi (Auth (Cookie ': auths) a :> api :: Type) Source # 
Instance details

Methods

toOpenApi :: Proxy (Auth (Cookie ': auths) a :> api) -> OpenApi

HasOpenApi (Auth auths a :> api) => HasOpenApi (Auth (JWT ': auths) a :> api :: Type) Source # 
Instance details

Methods

toOpenApi :: Proxy (Auth (JWT ': auths) a :> api) -> OpenApi

HasOpenApi api => HasOpenApi (Auth ('[] :: [Type]) a :> api :: Type) Source #

HasOpenApi instances for ProtectedAPI Copied from: https://github.com/biocad/servant-openapi3/issues/42

Instance details

Methods

toOpenApi :: Proxy (Auth ('[] :: [Type]) a :> api) -> OpenApi