Hexalith.IdentityStores 1.0.10

dotnet add package Hexalith.IdentityStores --version 1.0.10
                    
NuGet\Install-Package Hexalith.IdentityStores -Version 1.0.10
                    
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="Hexalith.IdentityStores" Version="1.0.10" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Hexalith.IdentityStores" Version="1.0.10" />
                    
Directory.Packages.props
<PackageReference Include="Hexalith.IdentityStores" />
                    
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 Hexalith.IdentityStores --version 1.0.10
                    
#r "nuget: Hexalith.IdentityStores, 1.0.10"
                    
#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.
#addin nuget:?package=Hexalith.IdentityStores&version=1.0.10
                    
Install Hexalith.IdentityStores as a Cake Addin
#tool nuget:?package=Hexalith.IdentityStores&version=1.0.10
                    
Install Hexalith.IdentityStores as a Cake Tool

Hexalith.IdentityStores

License: MIT Discord

Build Status

Coverity Scan Build Status Codacy Badge Quality Gate Status Security Rating Maintainability Rating Code Smells Lines of Code Technical Debt Reliability Rating Duplicated Lines (%) Vulnerabilities Bugs

Build status NuGet Latest

Overview

This repository contains the Hexalith Dapr Identity Stores components, providing functionalities related to user identity management, authentication, and authorization within the Hexalith ecosystem. It includes libraries, server implementations, and examples for integrating identity services into applications.

Dapr Integration

Dapr (Distributed Application Runtime) is a portable, event-driven runtime that makes it easy to build resilient, microservice-based applications. Hexalith.IdentityStores leverages Dapr's capabilities in the following ways:

Key Dapr Building Blocks Used

  • State Management: Identity data is persisted using Dapr's state management, allowing for pluggable storage providers (Redis, Azure CosmosDB, etc.)
  • Service-to-Service Invocation: Secure communication between identity services and consumers
  • Pub/Sub Messaging: Event-driven architecture for identity-related events (user created, role changed, etc.)
  • Secrets Management: Secure storage of sensitive identity configuration

Benefits of Dapr in Hexalith.IdentityStores

  • Platform Agnostic: Runs on Kubernetes, VMs, or local development environments
  • Pluggable Components: Easily swap underlying infrastructure (databases, message queues) without code changes
  • Language Independence: Interact with identity services from any language or framework that supports HTTP/gRPC
  • Built-in Resilience: Circuit breaking, retries, and distributed tracing capabilities

Dapr Architecture in Hexalith.IdentityStores

Identity data is stored in Dapr state stores while the authentication and authorization logic is implemented as Dapr services. Applications can interact with the identity services through standard Dapr APIs, using either the Dapr client SDKs or direct HTTP/gRPC calls.

Repository Structure

The repository is organized as follows:

  • src/: Contains the core source code.
    • src/libraries/: Class libraries intended to be packaged as NuGet packages. This is likely where the main identity store logic resides.
    • src/servers/: Server projects, potentially including API endpoints or services related to identity, possibly packaged as Docker containers.
    • src/examples/: Sample projects demonstrating how to use the libraries and servers.
  • test/: Contains unit, integration, and other test projects.
  • tools/: Utility scripts for development tasks (e.g., flush_redis.bat).
  • Hexalith.Builds/: Git submodule containing shared build configurations, tools, and scripts. See Hexalith.Builds/README.md for details on the build system.
  • .github/: GitHub-specific files, including workflow definitions and issue templates.
  • Root Files: Configuration files (.sln, .props, package.json), license, documentation instructions (DOCUMENTATION.ai.md), and this README.

Getting Started

Prerequisites

Initialization

  1. Clone the repository:
    git clone --recurse-submodules https://github.com/Hexalith/Hexalith.IdentityStores.git
    cd Hexalith.IdentityStores
    
    If you cloned without --recurse-submodules, run git submodule update --init --recursive.

Building the Code

Build the entire solution using the .NET CLI:

dotnet build Hexalith.IdentityStores.sln

Development

Running Tests

Execute tests using the .NET CLI:

dotnet test Hexalith.IdentityStores.sln

Contributing

Please refer to the contribution guidelines (if available) before submitting pull requests. Ensure code adheres to the project's coding standards and passes all tests.

License

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

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on Hexalith.IdentityStores:

Package Downloads
Hexalith.Security.Servers

Hexalith is a set of libraries to build an application with micro-service architecture.

Hexalith.IdentityStores.UI

Hexalith is a set of libraries to build an application with micro-service architecture.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.10 187 4/22/2025
1.0.9 243 4/21/2025
1.0.8 167 4/21/2025
1.0.7 79 4/19/2025
1.0.6 149 4/18/2025
1.0.5 176 4/17/2025
1.0.4 275 4/17/2025
1.0.3 181 4/16/2025
1.0.2 169 4/16/2025
1.0.1 226 4/16/2025
1.0.0 169 4/16/2025