ravendb/ravendb.contrib — pull request #10 by cmircea (2012-12-18 20:04:02+00:00)
Title: Authentication provider

An authentication provider, with support for local and external authentication, as well as some customization features.

Local authentication is classic username/password, with secure by default settings (eg. BCrypt for hashing with high work factor, salted and peppered); external requires implementing an interface and registering that implementation (will add some OAuth/OpenID providers later).

Configuration is done via the static property AuthProvider.Configuration. You just have to specify a document store (the default provider creates a new session for each method) and you're ready to go.

The authenticator and encoder can be customized (i.e. if you don't want to use ASP.NET`s forms authentication). I strongly advise against customizing the default encoder, it is secure enough for all applications.