Enable OpenID Connect (OIDC) in ASP.NET Core applications acting as the OpenID provider. Production use requires a commercial license.
$ dotnet add package ComponentSpace.OpenIDComponentSpace.OpenID enables ASP.NET Core applications to participate in OpenID Connect (OIDC) authentication as the OpenID provider and authorization server.
It supports Blazor, ASP.NET Core and any other OIDC compliant client.
Supports:
Supported OpenID flows include:
Supported grant types include:
Supported response types include:
Client authentication methods include:
ComponentSpace.OpenID is a commercial product that includes a free 30-day trial period.
Production use requires a commercial license.
Example ASP.NET Core projects are available that demonstrate the simple to use OpenID API and accompanying OpenID configuration.
[Route(".well-known/openid-configuration")]
[ResponseCache(Duration = 600, Location = ResponseCacheLocation.Any)]
public async Task GetMetadataAsync()
{
// Return the OpenID provider's metadata.
return await _openIDProvider.GetMetadataAsync();
}
[Route("openid/keys")]
[ResponseCache(Duration = 600, Location = ResponseCacheLocation.Any)]
public async Task GetKeysAsync()
{
// Return the OpenID provider's keys.
return await _openIDProvider.GetKeysAsync();
}
[Route("openid/authorize")]
public async Task AuthorizeAsync()
{
// Receive and process the OpenID Connect authentication request.
var authenticationRequest = await _openIDProvider.ReceiveAuthnRequestAsync();
}
[Route("openid/AuthenticationCompletion")]
public async Task AuthenticationCompletionAsync()
{
// Create and send the OpenID Connect authentication response.
return await _openIDProvider.SendAuthnResponseAsync(name, claims, accessToken);
}