SkillAgentSearch skills...

RavenDB.AspNet.Identity

ASP.NET Identity provider that uses RavenDB for storage of users and logins.

Install / Use

/learn @JudahGabriel/RavenDB.AspNet.Identity
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<img src="https://github.com/JudahGabriel/RavenDB.Identity/blob/master/RavenDB.Identity/nuget-icon.png?raw=true" width="50" height="50" /> RavenDB.AspNet.Identity

RavenDB identity provider for ASP.NET MVC 5+ and Web API 2+. (Looking for .NET Core identity provider for RavenDB? Check out our sister project, RavenDB.Identity.)

We're on NuGet as RavenDB.AspNet.Identity.

Instructions

  1. Create a new ASP.NET MVC 5 project, choosing the Individual User Accounts authentication type.

  2. Remove the Entity Framework packages and replace with RavenDB Identity:

    • Uninstall-Package Microsoft.AspNet.Identity.EntityFramework
    • Uninstall-Package EntityFramework
    • Install-Package RavenDB.AspNet.Identity
  3. In ~/Models/IdentityModels.cs:

    • Remove the namespace: Microsoft.AspNet.Identity.EntityFramework
    • Add the namespace: Raven.AspNet.Identity
    • Remove the entire ApplicationDbContext class. You don't need that!
  4. In ~/App_Start/IdentityConfig.cs

    • Update the ApplicationUserManager.Create method to get the Raven document session.
    public static ApplicationUserManager Create(IdentityFactoryOptions<ApplicationUserManager> options, IOwinContext context) 
    {
    	var manager = new ApplicationUserManager(new UserStore<ApplicationUser>(context.Get<IAsyncDocumentSession>()));
    	...
    }
    
  5. In ~/App_Start/Startup.Auth.cs:

    • Remove the Entity framework context and add a RavenDB context:
    // Old: app.CreatePerOwinContext(ApplicationDbContext.Create);
    // New. The raven variable is your Raven DocumentStore singleton.
    app.CreatePerOwinContext(() => raven.OpenAsyncSession());
    
  6. Add a RavenController.cs class.

  7. Make AccountController.cs inherit from RavenController

    public class AccountController : RavenController
    {
    	...
    }
    
View on GitHub
GitHub Stars52
CategoryDevelopment
Updated1y ago
Forks23

Languages

C#

Security Score

85/100

Audited on Nov 18, 2024

No findings