{"id":27109084,"url":"https://github.com/simpleidserver/simpleidserver","last_synced_at":"2025-05-15T09:05:59.599Z","repository":{"id":36957011,"uuid":"210639873","full_name":"simpleidserver/SimpleIdServer","owner":"simpleidserver","description":"OpenID,  OAuth 2.0, SCIM2.0, UMA2.0, FAPI, CIBA \u0026 OPENBANKING Framework for ASP.NET Core","archived":false,"fork":false,"pushed_at":"2025-05-12T21:09:10.000Z","size":40727,"stargazers_count":809,"open_issues_count":66,"forks_count":112,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-05-12T22:24:22.749Z","etag":null,"topics":["ciba","dotnet-core","fapi","identity","oauth2","openid","openid-providers","scim2","security","uma2"],"latest_commit_sha":null,"homepage":"https://simpleidserver.com/","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/simpleidserver.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"simpleidserver"}},"created_at":"2019-09-24T15:43:44.000Z","updated_at":"2025-05-09T22:35:50.000Z","dependencies_parsed_at":"2023-10-12T01:13:56.132Z","dependency_job_id":"53a6be3b-3318-4841-9390-2aef4a8aa68e","html_url":"https://github.com/simpleidserver/SimpleIdServer","commit_stats":null,"previous_names":[],"tags_count":71,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simpleidserver%2FSimpleIdServer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simpleidserver%2FSimpleIdServer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simpleidserver%2FSimpleIdServer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simpleidserver%2FSimpleIdServer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/simpleidserver","download_url":"https://codeload.github.com/simpleidserver/SimpleIdServer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254310513,"owners_count":22049468,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ciba","dotnet-core","fapi","identity","oauth2","openid","openid-providers","scim2","security","uma2"],"created_at":"2025-04-06T22:48:31.998Z","updated_at":"2025-05-15T09:05:59.566Z","avatar_url":"https://github.com/simpleidserver.png","language":"C#","funding_links":["https://github.com/sponsors/simpleidserver"],"categories":[],"sub_categories":[],"readme":"# Simpleidserver core\n\n\u003cimg src=\"images/logo.svg\" alt=\"SimpleIdServer\" style=\"width:200px;\"/\u003e\n\n[![Build status](https://ci.appveyor.com/api/projects/status/shtqlxhbda6gtdag?svg=true)](https://ci.appveyor.com/project/simpleidserver/simpleidserver)\n[![Join the chat at https://app.gitter.im/#/room/#simpleidserver:gitter.im](https://badges.gitter.im/repo.svg)](https://app.gitter.im/#/room/#simpleidserver:gitter.im)\n\nSimpleIdServer is an open source framework enabling the support of OPENID, OAUTH2.0, SCIM2.0, UMA2.0, FAPI and CIBA. It streamlines development, configuration and deployment of custom access control servers. \nThanks to its modularity and extensibility, SimpleIdServer can be customized to the specific needs of your organization for authentication, authorization and more.\n\n[Website](http://simpleidserver.com), [Documentation](https://simpleidserver.com/docs/intro) and [Demo](https://website.simpleidserver.com/master/clients).\n\n## Packages\n\n|                         \t\t\t \t\t\t\t\t\t|\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t|\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t|\n| --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `SimpleIdServer.IdServer` \t\t\t \t\t\t\t\t| [![NuGet](https://img.shields.io/nuget/v/SimpleIdServer.IdServer.svg)](https://nuget.org/packages/SimpleIdServer.IdServer) \t\t\t\t\t\t\t\t\t| [![NuGet](https://img.shields.io/nuget/dt/SimpleIdServer.IdServer.svg)](https://nuget.org/packages/SimpleIdServer.IdServer)\t\t\t\t\t\t\t\t\t|\n| `SimpleIdServer.IdServer.Email` \t\t\t \t\t\t\t| [![NuGet](https://img.shields.io/nuget/v/SimpleIdServer.IdServer.Email.svg)](https://nuget.org/packages/SimpleIdServer.IdServer.Email) \t\t\t\t\t\t| [![NuGet](https://img.shields.io/nuget/dt/SimpleIdServer.IdServer.Email.svg)](https://nuget.org/packages/SimpleIdServer.IdServer.Email) \t\t\t\t\t\t|\n| `SimpleIdServer.IdServer.Sms` \t\t\t \t\t\t\t| [![NuGet](https://img.shields.io/nuget/v/SimpleIdServer.IdServer.Sms.svg)](https://nuget.org/packages/SimpleIdServer.IdServer.Sms) \t\t\t\t\t\t\t| [![NuGet](https://img.shields.io/nuget/dt/SimpleIdServer.IdServer.Sms.svg)](https://nuget.org/packages/SimpleIdServer.IdServer.Sms) \t\t\t\t\t\t\t|\n| `SimpleIdServer.IdServer.WsFederation`\t \t\t\t\t| [![NuGet](https://img.shields.io/nuget/v/SimpleIdServer.IdServer.WsFederation.svg)](https://nuget.org/packages/SimpleIdServer.IdServer.WsFederation) \t\t\t| [![NuGet](https://img.shields.io/nuget/dt/SimpleIdServer.IdServer.WsFederation.svg)](https://nuget.org/packages/SimpleIdServer.IdServer.WsFederation) \t\t|\n| `SimpleIdServer.Templates` \t\t\t \t\t\t\t\t| [![NuGet](https://img.shields.io/nuget/v/SimpleIdServer.Templates.svg)](https://nuget.org/packages/SimpleIdServer.Templates) \t\t\t\t\t\t\t\t\t| [![NuGet](https://img.shields.io/nuget/dt/SimpleIdServer.Templates.svg)](https://nuget.org/packages/SimpleIdServer.Templates) \t\t\t\t\t\t\t\t|\n| `SimpleIdServer.Scim` \t\t\t \t\t\t\t\t\t| [![NuGet](https://img.shields.io/nuget/v/SimpleIdServer.Scim.svg)](https://nuget.org/packages/SimpleIdServer.Scim) \t\t\t\t\t\t\t\t\t\t\t| [![NuGet](https://img.shields.io/nuget/dt/SimpleIdServer.Scim.svg)](https://nuget.org/packages/SimpleIdServer.Scim) \t\t\t\t\t\t\t\t\t\t\t|\n| `SimpleIdServer.Scim.Persistence.EF` \t\t\t \t\t\t| [![NuGet](https://img.shields.io/nuget/v/SimpleIdServer.Scim.Persistence.EF.svg)](https://nuget.org/packages/SimpleIdServer.Scim.Persistence.EF) \t\t\t\t| [![NuGet](https://img.shields.io/nuget/dt/SimpleIdServer.Scim.Persistence.EF.svg)](https://nuget.org/packages/SimpleIdServer.Scim.Persistence.EF) \t\t\t|\n| `SimpleIdServer.Scim.Persistence.MongoDB`\t\t \t\t\t| [![NuGet](https://img.shields.io/nuget/v/SimpleIdServer.Scim.Persistence.MongoDB.svg)](https://nuget.org/packages/SimpleIdServer.Scim.Persistence.MongoDB) \t| [![NuGet](https://img.shields.io/nuget/dt/SimpleIdServer.Scim.Persistence.MongoDB.svg)](https://nuget.org/packages/SimpleIdServer.Scim.Persistence.MongoDB) \t|\n| `SimpleIdServer.Scim.Client`\t\t \t\t\t\t\t\t| [![NuGet](https://img.shields.io/nuget/v/SimpleIdServer.Scim.Client.svg)](https://nuget.org/packages/SimpleIdServer.Scim.Client) \t\t\t\t\t\t\t\t| [![NuGet](https://img.shields.io/nuget/dt/SimpleIdServer.Scim.Client.svg)](https://nuget.org/packages/SimpleIdServer.Scim.Client) \t\t\t\t\t\t\t|\n| `SimpleIdServer.OpenIdConnect`         \t \t\t\t\t| [![NuGet](https://img.shields.io/nuget/v/SimpleIdServer.OpenIdConnect.svg)](https://nuget.org/packages/SimpleIdServer.OpenIdConnect) \t                 \t\t| [![NuGet](https://img.shields.io/nuget/dt/SimpleIdServer.OpenIdConnect.svg)](https://nuget.org/packages/SimpleIdServer.OpenIdConnect) \t\t                |\n\n# Preparation\n\nInstall SimpleIdServer templates.\n\n```\ndotnet new --install SimpleIdServer.Templates\n```\n\nThis will add the following templates\n\n| Command line                 | Description                                                                                      |\n| ---------------------------- | ------------------------------------------------------------------------------------------------ |\n| dotnet new idserver          | Create Identity Server. By default, Entity Framework is configured to use SQLServer              |\n| dotnet new idserverwebsite   | Create Identity Server website. By default, Entity Framework is configured to use SQLServer      |\n| dotnet new scim              | Create SCIM Server.                                                                              |\n| dotnet new credissuer        | Create credential issuer API.                                                                    |\n| dotnet new credissueradminui | Create credential issuer administration UI.                                                      |\n\n## Create Visual Studio Solution\n\nOpen a command prompt and execute the following commands to create the directory structure for the solution.\n\n```\nmkdir Quickstart\ncd Quickstart\nmkdir src\ndotnet new sln -n Quickstart\n```\n\n## Create IdentityServer project\n\nTo create a web project named `IdServer` with the `SimpleIdServer.IdServer` package installed, execute the command line :\n\n```\ncd src\ndotnet new idserver -n IdServer\n```\n\nThe following files will be created within a new `src/IdServer` directory :\n\n* `IdServer.csproj` : Project file with the `SimpleIdServer.IdServer` NuGet package added.\n* `appsettings.json` : Contains the ConnectionString.\n* `Program.cs` : Main application entry point.\n* `IdServerConfiguration.cs` : Contains the `Clients`, `Resources`.\n\nNext, add the `IdServer` project into the Visual Studio Solution\n\n```\ncd ..\ndotnet sln add ./src/IdServer/IdServer.csproj\n```\n\nRun the IdServer project, ensuring that it listens on the URL `https://localhost:5001`.\n\n```\ncd src/IdServer\ndotnet run --urls=https://localhost:5001\n```\n\nThe IdentityServer is now ready to be used. \n\nBy default, there is one administrator account configured. You can access their profile by navigating to the URL `https://localhost:5001/master` and authenticate using the following credentials :\n\n* Login : administrator\n* Password : password\n\n## IdentityServer UI preview\n\nThe IdentityServer UI uses Bootstrap 5.\n\n![IdentityServer](./images/IdentityServer-1.png)\n\n## Create IdentityServer website project\n\ncreate a web project named `IdServerWebsite` with the `SimpleIdServer.IdServer.Website` package installed, execute the command line :\n\n```\ncd src\ndotnet new idserverwebsite -n IdServerWebsite\n```\n\nRun the `IdServerWebsite` project, it must listens on the url `https://localhost:5002`.\n\n```\ncd src/IdServerWebsite\ndotnet run --urls=https://localhost:5002\n```\n\nThe IdentityServer website is now ready to be used.\n\nThe website can be used to manage all aspects of an Identity Server solution, such as managing clients, users, and scopes.\n\n## Identity Server website UI preview\n\nThe IdentityServer website UI uses Radzen.\n\n![IdentityServerWebsite](./images/IdentityServerWebsite-2.png)\n\n## SCIM Security\n\nBy default SCIM is configured to use API KEY authentication.\nFor clients to perform any operation, they must include one of those keys in the `HTTP HEADER Authorization Bearer` field.\n\n| Owner    | Value                                |\n| -------- | ------------------------------------ |\n| IdServer | ba521b3b-02f7-4a37-b03c-58f713bf88e7 |\n| AzureAd  | 1595a72a-2804-495d-8a8a-2c861e7a736a |\n\n## Create SCIM project with EF support\n\nCreate a web project named `ScimEF` with the `SimpleIdServer.Scim.Persistence.EF` package installed and Entity Framework (EF) configured to use SQLServer, execute the command line :\n\n```\ncd src\ndotnet new scim -n ScimEF --connectionString \"Data Source=.;Initial Catalog=SCIM;Integrated Security=True;TrustServerCertificate=True\" -t \"SQLSERVER\"\n```\n\nNext, add the `ScimEF` project into the Visual Studio Solution\n\n```\ncd ..\ndotnet sln add ./src/ScimEF/ScimEF.csproj\n```\n\nRun the ScimEF project, ensuring that it listens on the URL `https://localhost:5003`.\n\n```\ncd src/SCIMEF\ndotnet run --urls=https://localhost:5003\n```\n\nNow that the SCIM server is running, you can check its Schemas endpoint by accessing [https://localhost:5003/Schemas](https://localhost:5003/Schemas).\n\n## Create SCIM project with MongoDB support\n\nTo create a web project named ScimMongoDB with the SimpleIdServer.Scim.Persistence.MongoDB package installed and MongoDB support, execute the command line :\n\n```\ncd src\ndotnet new scim -n ScimMongoDB --connectionString \"mongodb://localhost:27017\" -t \"MONGODB\"\n```\n\nNext, add the `ScimMongoDB` project into the Visual Studio Solution\n\n```\ncd ..\ndotnet sln add ./src/ScimMongoDB/ScimMongoDB.csproj\n```\n\nRun the ScimMongoDB project, ensuring that it listens on the URL `https://localhost:5003`.\n\n```\ncd src/ScimMongoDB\ndotnet run --urls=https://localhost:5003\n```\n\nNow that the SCIM server is running, you can check its Schemas endpoint by accessing [https://localhost:5003/Schemas](https://localhost:5003/Schemas).\n\n## Create credential issuer project\n\nTo create a web project named `CredentialIssuer` with the `SimpleIdServer.CredentialIssuer` package installed, execute the command line :\n\n```\ncd src\ndotnet new credissuer -n CredentialIssuer\n```\n\nThe following files will be created within a new `src/CredentialIssuer` directory :\n\n* `CredentialIssuer.csproj` : Project file with the `SimpleIdServer.CredentialIssuer` NuGet package added.\n* `appsettings.json` : Contains the properties to configure the Openid authentication, such as the ClientId, ClientSecret and Issuer.\n* `Program.cs` : Main application entry point.\n* `CredentialIssuerConfiguration.cs` : Contains the `CredentialConfigurations`.\n\nRun the CredentialIssuer project, ensuring that it listens on the URL `https://localhost:5005`.\n\n```\ncd src/IdServer\ndotnet run --urls=https://localhost:5005\n```\n\nThe CredentialIssuer is now ready to be used.\n\n## Credential issuer UI preview\n\nThe CredentialIssuer UI uses Bootstrap 5.\n\n![CredentialIssuer](./images/CredentialIssuer-1.png)\n\n## Create credential issuer website project\n\nTo create a web project named `CredentialIssuerAdminui` with the `SimpleIdServer.CredentialIssuer.Website` package installed, execute the command line :\n\n```\ncd src\ndotnet new credissueradminui -n CredentialIssuerAdminui\n```\n\nRun the `CredentialIssuerAdminui` project, it must listens on the url `https://localhost:5006`.\n\n```\ncd src/IdServerWebsite\ndotnet run --urls=https://localhost:5006\n```\n\nThe credential issuer administration ui is now ready to be used.\n\nThe website can be used to manage the credential configurations.\n\n## Credential issuer website UI preview\n\nThe CredentialIssuer website UI uses Radzen.\n\n![CredentialIssuerAdminUi](./images/CredentialIssuer-2.png)\n\n# Running with docker\n\nTo execute all the projects in Docker, execute the following commands :\n\n```\npsake dockerBuild\npsake dockerUp\n```\n\n# Contributing\n\nPlease read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.\n\n# Contact us\n\nTo contact the team, you can send an email to `agentsimpleidserver@gmail.com` or share your ideas in gitter.im.\nThe invitation link is https://app.gitter.im/#/room/#simpleidserver:gitter.im\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimpleidserver%2Fsimpleidserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimpleidserver%2Fsimpleidserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimpleidserver%2Fsimpleidserver/lists"}