oidc-client: OpenID Connect 1.0 library for RP

[ library, mit, web ] [ Propose Tags ]

This package supports implementing of an OpenID Connect 1.0 Relying Party.

Examples: https://github.com/krdlab/haskell-oidc-client/tree/master/examples

[Skip to Readme]


Automatic Flags

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Versions [RSS],,,,,,,,,,,,,
Change log CHANGELOG.md
Dependencies aeson (>=0.10), attoparsec (>=0.12), base (>=4.7 && <5), base64-bytestring, blaze-html, bytestring (>=0.10 && <0.11), containers, cprng-aes, crypto-random, cryptonite, exceptions, http-client, http-client-tls, http-types, jose-jwt (>=0.7), mtl, network, network-uri, oidc-client, scientific, scotty, scotty-cookie, text (>=1.2 && <1.3), time, tls (>=1.3.2), transformers, wai-extra [details]
License MIT
Copyright (c) 2015 Sho Kuroda
Author Sho Kuroda
Maintainer Sho Kuroda <krdlab@gmail.com>
Category Web
Home page https://github.com/krdlab/haskell-oidc-client
Source repo head: git clone git://github.com/krdlab/haskell-oidc-client.git
Uploaded by ShoKuroda at 2020-11-15T03:59:37Z
Distributions NixOS:
Reverse Dependencies 5 direct, 0 indirect [details]
Executables scotty-example
Downloads 6745 total (50 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for oidc-client-

[back to package description]

OpenID Connect 1.0 library for Relying Party


This package supports implementing of an OpenID Connect 1.0 Relying Party. It's written in Haskell.

This package uses jose-jwt package for decoding a received tokens.


$ cabal update
$ cabal install oidc-client

The documentation is available in Hackage.

Run example

examples/scotty is a runnable code. If you try to run it, execute commands as follows:

$ stack build --flag oidc-client:build-examples

and then

$ export OPENID_CLIENT_BASE_URL="http://localhost:3000"
$ export OPENID_CLIENT_ID="Your client ID"
$ export OPENID_CLIENT_SECRET="Your client secret"
$ stack exec scotty-example

You can access to http://localhost:3000/login.