Deveel.Identity.MongoDb 1.0.2

dotnet add package Deveel.Identity.MongoDb --version 1.0.2                
NuGet\Install-Package Deveel.Identity.MongoDb -Version 1.0.2                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Deveel.Identity.MongoDb" Version="1.0.2" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Deveel.Identity.MongoDb --version 1.0.2                
#r "nuget: Deveel.Identity.MongoDb, 1.0.2"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Deveel.Identity.MongoDb as a Cake Addin
#addin nuget:?package=Deveel.Identity.MongoDb&version=1.0.2

// Install Deveel.Identity.MongoDb as a Cake Tool
#tool nuget:?package=Deveel.Identity.MongoDb&version=1.0.2                

Deveel Identity - MongoDB

Build Code Coverage Maintainability Nuget

This is an implementation of the storage layer of the Microsoft Identity framework that supports MongoDB as persistent database system.

The model provided by this library supports all the standards requested by the framework for handling of the User Type and the Role Type, plus an extension to multi-tenancy scenarios.

Motivation

At the time this project was started (February 2022), several libraries already existed to support the MongoDB database storage layer for the previous version of the framework (ASP.NET Core Identity Core), but at certain point Microsoft rebooted the project and forked it (as Microsoft Extensions Identity), and despite the functional gap between the two frameworks is small, yet it is important (Data Protection, Authentication Keys, etc.).

Furthermore, given that the other available libraries are based on a discontinued line, we wanted to provide a version of the storage system anchored to the current efforts and updated revisions of the framework.

Usage

Starting to use the functions provided by the library is fairly easy and it ony requires invoking one of the overloads of the IdentityBuilder utility during the service registration process.


using System;

using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;

using Deveel.Security;

namespace Example {
    public class Startup {
        public Startup(IConfiguration config) {
            Configuration = config;
        }

        public IConfiguration Configuration { get; }

        public void Configure(IServiceCollection services) {
            // ... add any other service you need ...

            // this call adds the basic MongoDB storage layer
            // using the configurations from the sub-section Mongo:Identity
            services.AddIdentityCore<MongoUser>()
                .AddMongoStores(Configuration, "Mongo:Identity");
        }
    }
}

The above example is the simplest access point to the functions provided, and if you want to explore more how to tweak your configuration of the layer, visit the Documentation we have provided

Contribute

Contributions to open-source projects, like Deveel Identity - MongoDB, is generally driven by interest in using the product and services, if they would respect some of the expectations we have to its functions.

The best ways to contribute and improve the quality of this project is by trying it, filing issues, joining in design conversations, and make pull-requests.

Please refer to the Contributing Guidelines to receive more details on how you can contribute to this project.

We aim to address most of the questions you might have by providing documentations, answering frequently asked questions and following up on issues like bug reports and feature requests.

Contributors

<a href="https://github.com/deveel/deveel.identity.mongodb/graphs/contributors"> <img src="https://contrib.rocks/image?repo=deveel/deveel.identity.mongodb"/> </a>

License Information

This project is released under the Apache 2 Open-Source Licensing agreement.

Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.2 706 4/3/2022
1.0.1 481 2/23/2022
1.0.0 419 2/20/2022