# simpleidp Self-hosted OAuth 2.0 / OpenID Connect identity provider built with ASP.NET Core 8.0 and SimpleIdServer. ## Features - OAuth 2.0 Authorization Code flow with PKCE support - OpenID Connect authentication - Multiple authentication methods (password, SMS, OTP, WebAuthn, mobile, email, console, verifiable presentations) - Multi-realm support - User management with roles and claims - Client management with configurable redirect URIs - Refresh tokens with configurable expiration - Consent management ## Technology Stack - **Framework**: .NET 8.0 - **Identity Server**: SimpleIdServer 6.0.*-* - **UI**: Razor Pages - **Container**: Docker (multi-stage build) ## Quick Start ### Run Locally ```bash dotnet run ``` The server starts on: - HTTPS: `https://localhost:65455` - HTTP: `http://localhost:65456` ### Run in Docker ```bash docker build -t simpleidp . docker run -p 8080:8080 simpleidp ``` ## Configuration Configuration is loaded from JSON files in the `config/` directory: - `users.json` - User definitions (username, password, email, roles, claims, consents) - `clients.json` - OAuth 2.0 client definitions - `realm.json` - Realm configuration - `scopes.json` - Available scopes and claim mappers - `api.json` - API resource definitions ## Default Credentials - **Username**: `administrator` - **Password**: `password` - **Email**: `adm@mail.com` ## Docker Hub Image: `mareklesko/simpleidp`