Warning: This software is pre 1.0 and thus its API may change very
dynamically while updating only minor versions. This package will follow the
PVP once it reaches version 1.0.
OAuth is a popular protocol allowing servers to offer resources owned by some
user to a series of authorized clients securely. For instance, OAuth lets
Twitter provide access to a user's private tweets to the Twitter client
registered on their phone.
oauthenticated
is a Haskell library implementing OAuth protocols atop the
minimalistic http-client
HTTP client library extracted from http-conduit
.
Network.OAuth
offers simple functions for signing
Network.HTTP.Client.Request
s along with tools for Network.OAuth.Cred
ential
management and Network.OAuth.Server
configuration. Network.OAuth.Simple
provides a slightly more heavy-weight interface which manages the necessary state
and configuration using a monad transformer stack.
There's also an implementation of OAuth's three-legged credential acquisition
protocol built atop the Network.OAuth
API. This can be handled in both
conformant and old-style modes: conformant will reject server responses which
are not conformant with RFC 5849 (which builds atop community version OAuth
1.0a) while old-style better allows for less-than-compliant servers. See
Network.OAuth.Types.Params.Version
for more details.
Currently oauthenticated
only supports OAuth 1.0 and is in alpha. OAuth 2.0
support is a potential goal, but it's unclear if it can be transparently
supported at a similar level of abstraction.