Skip to content

EzSCIM

EzSCIM is a complete SCIM 2.0 server implementation for ASP.NET Core. Install one NuGet package, annotate your entity, implement one interface — and your API is provisioning-ready.

NuGet NuGet License: MIT


Quick install

# Any data source (Dapper, Cosmos DB, custom…)
dotnet add package EzSCIM

# Entity Framework Core
dotnet add package EzSCIM
dotnet add package EzSCIM.EfCore

Choose your integration model

  • IQueryable model


    Use this if you already have a repository or ORM that is not EF Core (Dapper, Cosmos DB, MongoDB, custom…).

    Annotate your entity with [ScimProperty], implement IUserGroupDataRepository<TUser, TGroup> returning an IQueryable<T>, and EzSCIM translates SCIM filters to LINQ server-side.

    Get started with IQueryable

  • EF Core model


    Use this if you use Entity Framework Core. Inherit EfScimRepositoryBase<TUser, TGroup, TContext> and get automatic Id generation, timestamps, CRUD, filter translation, and unique-constraint detection — with zero boilerplate.

    Get started with EF Core


Prerequisites

Requirements

  • .NET 8 or later
  • ASP.NET Core 8+
  • (EF Core model only) Entity Framework Core 8+

Authentication

JWT Bearer token authentication — applies to both models.

Authentication setup


Reference

Topic Model
Repository interfaces IQueryable
SCIM filter syntax IQueryable
SCIM 2.0 attribute reference Both
Microsoft Entra ID required SCIM fields Both
Schema extensions [ScimProperty] Both
IScimEntity interface EF Core
EfScimRepositoryBase reference EF Core
Multi-provider: SQL Server / PostgreSQL EF Core

🤖 Copilot Skill

The repository ships a GitHub Copilot Agent Skill that guides you through the full EzSCIM setup interactively — no need to read the docs first.

Install

gh skill install miiitch/EzSCIM ezscim

Usage

Open GitHub Copilot Chat and describe what you want to do, mentioning your stack:

"Set up EzSCIM in my ASP.NET Core project using EF Core and SQL Server"

or just:

"Add SCIM provisioning to my app"

The skill will ask you four questions before writing any code:

# Question Options
1 Integration model? IQueryable (Dapper, Cosmos DB, custom…) or EF Core
2 Group support needed? Yes / No
3 Database / ORM in use? Free text — e.g. "EF Core + PostgreSQL"
4 Add JWT Bearer authentication? Yes / No

It then generates all the boilerplate: entity, repository, Program.cs DI registration, and appsettings.json JWT configuration.

Manual install

Per repository — copy skills/ezscim/ into your project under .github/copilot/skills/ezscim/.

Per user (all workspaces):

OS Path
Windows %USERPROFILE%\.agents\skills\ezscim\
macOS / Linux ~/.agents/skills/ezscim/

Last Updated: May 2026