fix(users): prevent accidental user hijacking
This commit is contained in:
parent
76fb44d898
commit
014d479df8
@ -45,7 +45,7 @@ import Auth.Dummy (apDummy)
|
|||||||
|
|
||||||
|
|
||||||
hijackUserForm :: Form ()
|
hijackUserForm :: Form ()
|
||||||
hijackUserForm csrf = do
|
hijackUserForm = identifyForm FIDHijackUser $ \csrf -> do
|
||||||
(btnResult, btnView) <- mopt (buttonField BtnHijack) "" Nothing
|
(btnResult, btnView) <- mopt (buttonField BtnHijack) "" Nothing
|
||||||
return (btnResult >>= guard . is _Just, mconcat [toWidget csrf, fvWidget btnView])
|
return (btnResult >>= guard . is _Just, mconcat [toWidget csrf, fvWidget btnView])
|
||||||
|
|
||||||
@ -351,7 +351,7 @@ postUsersR = do
|
|||||||
, dbtExtraReps = []
|
, dbtExtraReps = []
|
||||||
}
|
}
|
||||||
|
|
||||||
$logInfoS "UsersFormResult" $ tshow usersRes
|
-- $logInfoS "UsersFormResult" $ tshow usersRes
|
||||||
formResult usersRes $ \case
|
formResult usersRes $ \case
|
||||||
(act, usersSet)
|
(act, usersSet)
|
||||||
| Set.null usersSet && isNotSetSupervisor act ->
|
| Set.null usersSet && isNotSetSupervisor act ->
|
||||||
|
|||||||
@ -308,6 +308,7 @@ data FormIdentifier
|
|||||||
| FIDAvsSetLicence
|
| FIDAvsSetLicence
|
||||||
| FIDBtnAvsImportUnknown
|
| FIDBtnAvsImportUnknown
|
||||||
| FIDBtnAvsRevokeUnknown
|
| FIDBtnAvsRevokeUnknown
|
||||||
|
| FIDHijackUser
|
||||||
deriving (Eq, Ord, Read, Show)
|
deriving (Eq, Ord, Read, Show)
|
||||||
|
|
||||||
instance PathPiece FormIdentifier where
|
instance PathPiece FormIdentifier where
|
||||||
|
|||||||
Reference in New Issue
Block a user