A lightweight OpenID Connect (OIDC) Identity Provider, designed to work seamlessly with Axoflow.
Axoflow-IdP is a simple yet feature-rich OIDC provider that enables authentication for your applications. It supports multiple clients, user self-registration, administrative user management, and JWT-based token signing. The provider implements standard OIDC endpoints including authorization, token exchange, and JWKS discovery.
- Create a
config.jsonfile with your OIDC clients and base URL:
{
"baseUrl": "http://localhost:8080",
"clients": [
{
"id": "your-client-id",
"redirectUri": "http://localhost:3000/callback"
}
],
"signingKey": {
"filePath": "signing-key.pem",
"generateIfMissing": true
}
}- Run the IdP:
go run main.go- The IdP will be available at
http://localhost:8080with OIDC discovery at/.well-known/openid-configuration
redirect_uriis matched by exact string comparison against a client's registered URIs at both/oidc/authand/token. Register additional callbacks with aredirectUrisarray alongside (or instead of) the singularredirectUri; any request whoseredirect_uriis not an exact match is rejected.
If you find this project useful, help us:
- Support the development of this project and star this repo! ⭐
- Help new users with issues they may encounter. 💪
- Send a pull request with your new features and bug fixes. 🚀
The project is licensed under the Apache 2.0 License.