Identity.Module.API 2.0.156

There is a newer version of this package available.
See the version list below for details.
dotnet add package Identity.Module.API --version 2.0.156
                    
NuGet\Install-Package Identity.Module.API -Version 2.0.156
                    
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="Identity.Module.API" Version="2.0.156" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Identity.Module.API" Version="2.0.156" />
                    
Directory.Packages.props
<PackageReference Include="Identity.Module.API" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Identity.Module.API --version 2.0.156
                    
#r "nuget: Identity.Module.API, 2.0.156"
                    
#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.
#:package Identity.Module.API@2.0.156
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Identity.Module.API&version=2.0.156
                    
Install as a Cake Addin
#tool nuget:?package=Identity.Module.API&version=2.0.156
                    
Install as a Cake Tool

.NET Modular Dynamic Identity Manager

A set of libraries to easily integrate and extend authentication in ASP.NET Core projects, using ASP.NET Core Identity.

This library is still under development of new implementations and in the process of creating the related documentation.

📎 Table of Contents

🧩 Features

  • Minimal API: Built using .NET 8 Minimal API for a lightweight and efficient implementation.
  • Entity Framework Core: Uses EF Core for data access, making it easy to integrate with your existing database.
  • Modular: The library is designed to be modular, allowing you to add or remove features as needed.
  • Dynamic: Supports dynamic management of users, roles, claims, forms, licensing and policies.
  • Flexible Configuration: Easily configurable via appsettings.json to suit your application's needs.
  • Outbox Pattern: Implement the transactional outbox pattern for reliable email sending.

🛠️ Installation

Prerequisites

Setup

The library is available on NuGet, just search for Identity.Module.API in the Package Manager GUI or run the following command in the .NET CLI:

dotnet add package Identity.Module.API

⚙️ Configuration

The configuration can be completely managed by adding this section to the appsettings.json file:

The library is still under development, so the configuration may change in future updates.

{
    "ConnectionStrings": {
        "DatabaseType": "sqlserver",
        "SQLServer": "Data Source=[HOSTNAME];Initial Catalog=[DATABASE];User ID=[USERNAME];Password=[PASSWORD];Encrypt=False"
    },
    "JwtOptions": {
        "SchemaName": "Bearer",
        "Issuer": "[ISSUER]",
        "Audience": "[AUDIENCE]",
        "SecurityKey": "[SECURITY-KEY-512-CHAR]",
        "ClockSkew": "00:05:00",
        "AccessTokenExpirationMinutes": 60,
        "RefreshTokenExpirationMinutes": 60,
        "RequireUniqueEmail": true,
        "RequireDigit": true,
        "RequiredLength": 8,
        "RequireUppercase": true,
        "RequireLowercase": true,
        "RequireNonAlphanumeric": true,
        "RequiredUniqueChars": 4,
        "RequireConfirmedEmail": true,
        "MaxFailedAccessAttempts": 3,
        "AllowedForNewUsers": true,
        "DefaultLockoutTimeSpan": "00:05:00"
    },
    "SmtpOptions": {
        "Host": "smtp.example.org",
        "Port": 25,
        "Security": "StartTls",
        "Username": "Username del server SMTP",
        "Password": "Password del server SMTP",
        "Sender": "MyApplication <noreply@example.org>",
        "SaveEmailSent": true
    },
    "ApplicationOptions": {
        "MigrationsAssembly": "MinimalApi.Identity.Migrations",
        "ErrorResponseFormat": "List"
    },
    "FeatureFlagsOptions": {
        "EnabledFeatureLicense": true,
        "EnabledFeatureModule": true
    },
    "HostedServiceOptions": {
        "IntervalAuthPolicyUpdaterMinutes": 5
    },
    "UsersOptions": {
        "AssignAdminRoleOnRegistration": "admin@example.org",
        "PasswordExpirationDays": 90
    },
    "ValidationOptions": {
        "MinLength": 3,
        "MaxLength": 50,
        "MinLengthDescription": 5,
        "MaxLengthDescription": 100
    }
}

For migrations you can use a specific project to add to your solution, then configuring the assembly in ApplicationOptions:MigrationsAssembly, otherwise leave it blank and the assembly containing the Program.cs class will be used.

🗃️ Database

See the documentation for managing the database

💡 Usage Examples

The library is still under development, so the Program.cs configuration may change in future updates.

A practical example of Program.cs configuration is available here

🔐 Authentication

This library currently supports the following authentication types:

  • JWT Bearer Token

📚 API Reference

See the documentation for a list of all available endpoints.

📦 Packages

See the documentation for a list of all available packages.

🏆 Badges

SonarCloud

Quality Gate Status Bugs Code Smells Duplicated Lines (%) Lines of Code

Reliability Rating Security Rating Technical Debt Maintainability Rating Vulnerabilities

📜 License

This project is licensed under the MIT License - see the LICENSE file for details.

⭐ Give a Star

Don't forget that if you find this project useful, put a ⭐ on GitHub to show your support and help others discover it.

🤝 Contributing

The project is constantly evolving. Contributions are always welcome. Feel free to report issues and submit pull requests to the repository, following the steps below:

  1. Fork the repository
  2. Create a feature branch (starting from the develop branch)
  3. Make your changes
  4. Submit a pull requests (targeting develop)

🆘 Support

If you have any questions or need help, you can add a new thread here.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  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.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.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
2.5.215 0 11/8/2025
2.5.214 111 11/5/2025
2.5.213 140 11/5/2025
2.5.212 160 11/4/2025
2.5.211 163 11/3/2025
2.5.209 162 11/2/2025
2.5.208 172 10/29/2025
2.5.207 170 10/28/2025
2.5.206 162 10/27/2025
2.5.204 168 10/27/2025
2.5.203 142 10/24/2025
2.5.201 166 10/23/2025
2.5.200 168 10/22/2025
2.5.199 165 10/20/2025
2.5.195 107 10/18/2025
2.5.193 96 10/18/2025
2.5.189 121 10/17/2025
2.5.180 164 10/16/2025
2.5.179 144 10/10/2025
2.5.177 169 10/8/2025
2.5.176 164 10/8/2025
2.5.175 180 10/6/2025
2.5.171 167 10/4/2025
2.5.167 171 9/30/2025
2.5.164 142 9/28/2025
2.5.157 275 9/23/2025
2.5.141 223 9/21/2025
2.5.139 153 9/21/2025
2.5.137 187 9/20/2025
2.5.131 279 9/19/2025
2.5.123 297 9/17/2025
2.5.119 296 9/16/2025
2.5.100 95 9/12/2025
2.5.99 87 9/12/2025
2.5.98 124 9/12/2025
2.5.92 161 9/11/2025
2.5.79 162 9/8/2025
2.5.78 142 9/6/2025
2.5.71 176 9/4/2025
2.5.64 177 9/3/2025
2.5.58 217 8/27/2025
2.5.55 208 8/26/2025
2.5.54 183 8/25/2025
2.5.42 159 8/21/2025
2.5.13 177 8/12/2025
2.5.9 162 8/10/2025
2.0.171 123 8/9/2025
2.0.165 244 8/7/2025
2.0.156 241 8/6/2025
2.0.122 73 8/2/2025
2.0.119 144 7/31/2025
2.0.100 152 7/28/2025
2.0.98 347 7/25/2025
2.0.94 585 7/23/2025
2.0.67 185 7/16/2025
2.0.65 166 7/14/2025
2.0.64 98 7/12/2025
2.0.49 170 7/9/2025
2.0.47 279 7/7/2025
2.0.46 280 7/6/2025
2.0.36 97 7/5/2025
2.0.29 140 7/4/2025