Skip to content

OAuth 2.x and OpenID Connect C library

License

Notifications You must be signed in to change notification settings

aragajaga/liboauth2

 
 

Repository files navigation

Build Status Language grade: C/C++ Total alerts

liboauth2

Generic library that can be used to build OAuth 2.x and OpenID Connect C-based servers and clients e.g. web-server plugins.

Overview

  • extends cjose into OAuth 2.x and OpenID Connect specific claims, secrets and hashes
  • adds OAuth 2.x / OpenID Connect protocols by abstracting HTTP requests/responses from web server implementation specifics
  • reusable code across for other OAuth 2.x (and REST) related protocols e.g. token exchange with endpoint authentication, source token retrieval, target pass settings etc.
  • generic code with plugins for Apache, NGINX and possibly more (e.g. Envoy, HA Proxy, IIS)
  • configurable cache backend/size/options per cache element type
  • cookie-based session management (i.e. enforce inactivity timeout, expiry)

Features

Dependencies

liboauth2 depends on the following libraries:

  • openssl for SSL and crypto support
  • libcurl for HTTP client support
  • jansson for JSON parsing
  • cjose for JSON Object Signing and Encryption (JOSE) support
  • (optional) libmemcached for memcache cache backend support
  • (optional) libhiredis for Redis cache backend support
  • (optional) Apache 2.x for Apache 2.x bindings support
  • (optional) NGINX for NGINX bindings support
  • (optional, build time only) check for unit test support

Support

Community Support

For generic questions, see the Wiki pages with Frequently Asked Questions at:
https://github.com/zmartzone/liboauth2/wiki
Any questions should go to the Discussions tracker.

Commercial Support

For commercial support contracts, professional services, training and use-case specific support you can contact (ZmartZone IAM)[https://www.zmartzone.eu] at:
sales@zmartzone.eu

Disclaimer

This software is open sourced by ZmartZone IAM. For commercial support you can contact ZmartZone IAM as described above in the Support section.

About

OAuth 2.x and OpenID Connect C library

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 96.7%
  • M4 2.2%
  • Other 1.1%