Code — OAuth

Code

We have setup a code repository on Google Code for gathering libraries and other supporting examples. These libraries are contributed by members of the community and have not been tested or are necessarily known to work.

If you would like to test them and report issues, please visit our Issue Tracker.

DotNET

DotNetOpenAuth a consumer and service provider implementation for OAuth 1.0 and 1.0a for .NET, written in C#. It has built-in support for HMAC-SHA1, RSA-SHA1, and PLAINTEXT signature methods with extensibility to add others. It also includes the OpenID+OAuth extension. It works for ASP.NET as well as non-ASP.NET services, and works in partial trust shared hosting environments. Contributed by Andrew Arnott.

Madgex has released an open source OAuth library for .NET (released under the MIT License). Documentation and demos are available.

C#

Eran Sandler has contributed a basic C# class that performs signing.

Alex Henderson offers DevDefined OAuth, an OAuth library developed in C#, providing both consumer and provider implementations for OAuth 1.0 and 1.0a which includes support for the Error Reporting Extensions and allows for RSA-SHA1, HMAC-SHA1 and Plaintext signing. DevDefined OAuth is designed to be both test friendly and extensible, allowing the core to be repurposed to your specific projects needs, and is available under an MIT License. Extensions to the framework to support ASP.Net MVC can also be found on this fork.

VB.NET

Nicolas Tarzia has translated Eran Sandler’s C# library into VB.NET.

ColdFusion

Harry Klein has contributed a ColdFusion library which is also listed at RIA Forge.

Common Lisp

Leslie P. Polzer contributed cl-oauth, which is available on GitHub and Gitorious. It currently supports HMAC-SHA1 authentication and comes with some SP convenience functions. It’s not polished yet but comes with a basic test suite and all you need to set up both Consumers and Service Providers.

Java

A Java library and examples were contributed by John Kristian, Praveen Alavilli and Dirk Balfanz.

OAuth for Spring Security is also available, contributed by Ryan Heaton. This project is not hosted in the OAuth repository.

OAuth Signpost offers simple OAuth message signing for Java and Apache HttpComponents (Google Android ready!). Contributed by Matthias Kaeppler.

Scribe is a mature OAuth library for Java by Pablo Fernandez that is intended to work with all APIs. It has been featured in LinkedIn's developers forums and works with Google, Yahoo, LinkedIn, Twitter, and Foursquare APIs out of the box.

Javascript

John Kristian has contributed a Javascript Library.

Jifty

Shawn M Moore has written an OAuth Plugin for the Jifty Framework.

Objective-C

Jon Crosby has released an OAuthConsumer and OAuthTestSuite for Objective-C for Mac developers. The OAuthConsumer framework is available in the repository and Jon has also written up Using OAuthConsumer, a complete guide to using the OAuthConsumer framework for Mac apps.

Karl Adam released MPOAuthConnection, a drop in component for Mac and iPhone apps to talk to OAuth web services.

OCaml

Jake Donham from SkyDeck has released Ooauth, an implementation of OAuth in OCaml. Discussion group.

Perl

Keith Grennan has written a Net::OAuth in Perl.

PHP

Python

Joe Stump (SimpleGeo) maintains the python-oauth2 library on GitHub, and is considered the most up-to-date and unit-tested implementation of OAuth for Python 2.4+.

Ruby

Blaine Cook, Pelle Braendgaard and others have written a library in Ruby.

Others

Mark Atwood is working on mod_auth_oauth. Michael Mealling is working on support for SiteMinder. Anthony Webb and Dave Hoff of IMified are working on an OAuth ColdFusion library.

There is an XQuery OAuth Library written by Stephan Merkli and documented here.

Comments