Web.Authenticate.OAuth
Contents
- data OAuth = OAuth {}
- data SignMethod
- = PLAINTEXT
- | HMACSHA1
- | RSASHA1 PrivateKey
- data Credential = Credential {
- unCredential :: [(ByteString, ByteString)]
- data OAuthException = OAuthException String
- emptyCredential :: Credential
- insert :: ByteString -> ByteString -> Credential -> Credential
- delete :: ByteString -> Credential -> Credential
- inserts :: [(ByteString, ByteString)] -> Credential -> Credential
- signOAuth :: OAuth -> Credential -> Request IO -> IO (Request IO)
- genSign :: MonadIO m => OAuth -> Credential -> Request m -> m ByteString
- authorizeUrl :: OAuth -> Credential -> String
- getAccessToken, getTokenCredential :: OAuth -> Credential -> IO Credential
- getTemporaryCredential :: OAuth -> IO Credential
- getTemporaryCredentialWithScope :: ByteString -> OAuth -> IO Credential
- getAccessTokenProxy, getTokenCredentialProxy :: Maybe Proxy -> OAuth -> Credential -> IO Credential
- getTemporaryCredentialProxy :: Maybe Proxy -> OAuth -> IO Credential
- getAccessToken' :: (Request IO -> Request IO) -> OAuth -> Credential -> IO Credential
- getTemporaryCredential' :: (Request IO -> Request IO) -> OAuth -> IO Credential
- paramEncode :: ByteString -> ByteString
- addScope :: MonadIO m => ByteString -> Request m -> Request m
- addMaybeProxy :: Maybe Proxy -> Request m -> Request m
Data types
Data type for OAuth client (consumer).
Constructors
| OAuth | |
Fields
| |
data SignMethod Source
Data type for signature method.
Constructors
| PLAINTEXT | |
| HMACSHA1 | |
| RSASHA1 PrivateKey |
data Credential Source
Data type for redential.
Constructors
| Credential | |
Fields
| |
data OAuthException Source
Constructors
| OAuthException String |
Operations for credentials
emptyCredential :: CredentialSource
Empty credential.
Arguments
| :: ByteString | Parameter Name |
| -> ByteString | Value |
| -> Credential | Credential |
| -> Credential | Result |
Insert an oauth parameter into given Credential.
Arguments
| :: ByteString | Parameter name |
| -> Credential | Credential |
| -> Credential | Result |
Remove an oauth parameter for key from given Credential.
inserts :: [(ByteString, ByteString)] -> Credential -> CredentialSource
Convenient method for inserting multiple parameters into credential.
Signature
Arguments
| :: OAuth | OAuth Application |
| -> Credential | Credential |
| -> Request IO | Original Request |
| -> IO (Request IO) | Signed OAuth Request |
Add OAuth headers & sign to Request.
genSign :: MonadIO m => OAuth -> Credential -> Request m -> m ByteStringSource
Url & operation for authentication
Arguments
| :: OAuth | OAuth Application |
| -> Credential | Temporary Credential (Request Token & Secret) |
| -> String | URL to authorize |
URL to obtain OAuth verifier.
getAccessToken,getTokenCredentialSource
Arguments
| :: OAuth | OAuth Application |
| -> Credential | Temporary Credential with oauth_verifier |
| -> IO Credential | Token Credential (Access Token & Secret) |
Get Access token.
Arguments
| :: OAuth | OAuth Application |
| -> IO Credential | Temporary Credential (Request Token & Secret). |
Get temporary credential for requesting acces token.
getTemporaryCredentialWithScopeSource
Arguments
| :: ByteString | Scope parameter string |
| -> OAuth | OAuth Application |
| -> IO Credential | Temporay Credential (Request Token & Secret). |
Get temporary credential for requesting access token with Scope parameter.
getAccessTokenProxy,getTokenCredentialProxySource
Arguments
| :: Maybe Proxy | Proxy |
| -> OAuth | OAuth Application |
| -> Credential | Temporary Credential with oauth_verifier |
| -> IO Credential | Token Credential (Access Token & Secret) |
Get Access token via the proxy.
getTemporaryCredentialProxySource
Arguments
| :: Maybe Proxy | Proxy |
| -> OAuth | OAuth Application |
| -> IO Credential | Temporary Credential (Request Token & Secret). |
Get temporary credential for requesting access token via the proxy.
Arguments
| :: (Request IO -> Request IO) | Request Hook |
| -> OAuth | OAuth Application |
| -> Credential | Temporary Credential with oauth_verifier |
| -> IO Credential | Token Credential (Access Token & Secret) |
Utility Methods
paramEncode :: ByteString -> ByteStringSource
Encode a string using the percent encoding method for OAuth.