| Copyright | (c) Anton Gushcha, 2016 |
|---|---|
| License | MIT |
| Maintainer | ncrashed@gmail.com |
| Stability | experimental |
| Portability | Portable |
| Safe Haskell | None |
| Language | Haskell2010 |
Servant.Server.Auth.Token.SingleUse
Description
- makeSingleUseExpire :: MonadIO m => NominalDiffTime -> m UTCTime
- registerSingleUseCode :: MonadIO m => UserImplId -> SingleUseCode -> Maybe UTCTime -> SqlPersistT m ()
- invalideSingleUseCode :: MonadIO m => UserSingleUseCodeId -> SqlPersistT m ()
- validateSingleUseCode :: MonadIO m => UserImplId -> SingleUseCode -> SqlPersistT m Bool
- generateSingleUsedCodes :: MonadIO m => UserImplId -> IO SingleUseCode -> Word -> SqlPersistT m [SingleUseCode]
Documentation
Arguments
| :: MonadIO m | |
| => NominalDiffTime | Duration of code |
| -> m UTCTime | Time when the code expires |
Calculate expire date for single usage code
Arguments
| :: MonadIO m | |
| => UserImplId | Id of user |
| -> SingleUseCode | Single usage code |
| -> Maybe UTCTime | Time when the code expires, |
| -> SqlPersistT m () |
Register single use code in DB
Arguments
| :: MonadIO m | |
| => UserSingleUseCodeId | Id of code |
| -> SqlPersistT m () |
Marks single use code that it cannot be used again
Arguments
| :: MonadIO m | |
| => UserImplId | Id of user |
| -> SingleUseCode | Single usage code |
| -> SqlPersistT m Bool |
Check single use code and return True on success.
On success invalidates single use code.
generateSingleUsedCodes Source
Arguments
| :: MonadIO m | |
| => UserImplId | Id of user |
| -> IO SingleUseCode | Generator of codes |
| -> Word | |
| -> SqlPersistT m [SingleUseCode] |
Generates a set single use codes that doesn't expire.
Note: previous codes without expiration are invalidated.