Blazor-Auth0-ServerSide
0.2.1-alpha-2
See the version list below for details.
dotnet add package Blazor-Auth0-ServerSide --version 0.2.1-alpha-2
NuGet\Install-Package Blazor-Auth0-ServerSide -Version 0.2.1-alpha-2
<PackageReference Include="Blazor-Auth0-ServerSide" Version="0.2.1-alpha-2" />
paket add Blazor-Auth0-ServerSide --version 0.2.1-alpha-2
#r "nuget: Blazor-Auth0-ServerSide, 0.2.1-alpha-2"
// Install Blazor-Auth0-ServerSide as a Cake Addin #addin nuget:?package=Blazor-Auth0-ServerSide&version=0.2.1-alpha-2&prerelease // Install Blazor-Auth0-ServerSide as a Cake Tool #tool nuget:?package=Blazor-Auth0-ServerSide&version=0.2.1-alpha-2&prerelease
Blazor Auth0 Library (client-side)
This is a library for Blazor authentication with OIDC Authorization Code-Grant and Implicit-Grant flows, using Auth0's Universal Login and Silent Login for Blazor v3.0.0-preview5+ server side solutions, the idea behind this is to have an easy way of using Auth0's services in Blazor without the need of the auth0.js library.
Start using it in 3 simple steps!
- Start by adding a reference to Blazor-Auth0-ServerSide.0.2.1-alpha-2 to your Blazor Client Side project
Install-Package Blazor-Auth0-ServerSide -Version 0.2.1-alpha-2
- In Startup.cs, register the service inside ConfigureServices method
public void ConfigureServices(IServiceCollection services)
{
//...
services.AddScoped<HttpClient>();
services.AddScoped((sp) =>
{
return new Blazor.Auth0.Shared.Models.ClientSettings()
{
Auth0Domain = "[Auth0_Domain]",
Auth0ClientId = "[Auth0_Client_Id]",
//// Redirection to home can be forced uncommenting the following line this setting primes over Auth0RedirectUri
// RedirectAlwaysToHome = true,
//// Uncomment following line to force the user to be authenticated
// LoginRequired = true
};
});
services.AddScoped<Blazor.Auth0.ServerSide.Authentication.AuthenticationService>();
//...
}
- Replace the content of MainLayout.razor with the following code
@using Blazor.Auth0.ServerSide.Components
@using Blazor.Auth0.ServerSide.Authentication
@using Blazor.Auth0.Shared.Models.Enumerations
@inherits LayoutComponentBase
@inject AuthenticationService _authService
<AuthComponent>
@*Will render while determining user's session state*@
<UndefinedSessionStateContent>
Determining session state, please wait...
</UndefinedSessionStateContent>
@*Will render after determining session state*@
<ActiveInactiveSessionStateContent>
<div class="sidebar">
<NavMenu />
</div>
<div class="main">
<div class="top-row px-4">
@if (_authService.SessionState == SessionStates.Active)
{
<a href="" class="ml-md-auto" onclick="@_authService.LogOut">LogOut</a>
}
else
{
<a href="" class="ml-md-auto" onclick="@_authService.Authorize">LogIn</a>
}
</div>
<div class="content px-4">
@Body
</div>
</div>
</ActiveInactiveSessionStateContent>
@*There's also options for showing content on Active & Inactive session states alone*@
<ActiveSessionStateContent></ActiveSessionStateContent>
<InactiveSessionStateContent></InactiveSessionStateContent>
</AuthComponent>
Other options include:
- AuthenticationGrant: Allows you to choose between authorization_code (recommended) and implicit_grant authentication flows.
- RedirectAlwaysToHome: When set to true, forces the redirect_uri param to be the home path, this value overrides Auth0RedirectUri
- LoginRequired: When set to true, forces a redirection to the login page in case the user is not authenticated.
- GetUserInfoFromIdToken: When set to true, the serivce will use the id_token payload to build the user info, this is good in case all the user info you require is present in the id_token payload and you want avoid doing an extra call to Auth0, in case that tere's no id_token present in the authentication response the service will fall back gracefully to try to get the user info from an API call to auth0, default value is false
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 is compatible. netcoreapp3.1 was computed. |
-
.NETCoreApp 3.0
- Blazor-Auth0-Shared (>= 0.2.1-alpha-2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on Blazor-Auth0-ServerSide:
Repository | Stars |
---|---|
henalbrod/Blazor.Auth0
The library for using Auth0 in Blazor applications.
|
Version | Downloads | Last updated |
---|---|---|
2.0.0-Preview5 | 1,588 | 3/4/2020 |
2.0.0-Preview4 | 750 | 11/17/2019 |
2.0.0-Preview3 | 286 | 11/4/2019 |
2.0.0-Preview2 | 269 | 11/4/2019 |
2.0.0-Preview1 | 271 | 10/26/2019 |
1.0.0-Preview3 | 910 | 9/23/2019 |
1.0.0-Preview2 | 348 | 9/19/2019 |
1.0.0-Preview1 | 310 | 8/24/2019 |
0.4.2-beta.2 | 353 | 7/25/2019 |
0.4.0-beta.1 | 362 | 6/15/2019 |
0.3.0-beta-1 | 365 | 6/14/2019 |
0.2.1-alpha-2 | 353 | 6/12/2019 |
0.2.0-alpha-1 | 396 | 6/5/2019 |
0.1.0-alpha-2 | 389 | 5/8/2019 |
0.1.0-alpha-1 | 448 | 4/20/2019 |
Fixed Bugs:
- Silent Login interval is too short [https://github.com/Pegazux/Blazor.Auth0/issues/5]
- Unnecesary StateHasChanged event fired on silent login [https://github.com/Pegazux/Blazor.Auth0/issues/6]