Blazor-Auth0-ClientSide
0.5.1-alpha-2
See the version list below for details.
dotnet add package Blazor-Auth0-ClientSide --version 0.5.1-alpha-2
NuGet\Install-Package Blazor-Auth0-ClientSide -Version 0.5.1-alpha-2
<PackageReference Include="Blazor-Auth0-ClientSide" Version="0.5.1-alpha-2" />
paket add Blazor-Auth0-ClientSide --version 0.5.1-alpha-2
#r "nuget: Blazor-Auth0-ClientSide, 0.5.1-alpha-2"
// Install Blazor-Auth0-ClientSide as a Cake Addin #addin nuget:?package=Blazor-Auth0-ClientSide&version=0.5.1-alpha-2&prerelease // Install Blazor-Auth0-ClientSide as a Cake Tool #tool nuget:?package=Blazor-Auth0-ClientSide&version=0.5.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+ client 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-ClientSide.0.5.1-alpha-2 to your Blazor Client Side project
Install-Package Blazor-Auth0-ClientSide -Version 0.5.1-alpha-2
- In Startup.cs, register the service inside ConfigureServices method
public void ConfigureServices(IServiceCollection services)
{
//...
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.ClientSide.Authentication.AuthenticationService>();
//...
}
- Replace the content of MainLayout.razor with the following code
@using Blazor.Auth0.ClientSide.Components
@using Blazor.Auth0.ClientSide.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 | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Blazor-Auth0-Shared (>= 0.2.1-alpha-2)
- Microsoft.AspNetCore.Components (>= 3.0.0-preview5-19227-01)
- Microsoft.AspNetCore.Components.Browser (>= 3.0.0-preview5-19227-01)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Blazor-Auth0-ClientSide:
Package | Downloads |
---|---|
Blazor-OpenId
OpenId library for Balzor |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on Blazor-Auth0-ClientSide:
Repository | Stars |
---|---|
henalbrod/Blazor.Auth0
The library for using Auth0 in Blazor applications.
|
Version | Downloads | Last updated |
---|---|---|
2.0.0-Preview5 | 1,385 | 3/4/2020 |
2.0.0-Preview4 | 756 | 11/17/2019 |
2.0.0-Preview3 | 300 | 11/4/2019 |
2.0.0-Preview2 | 292 | 11/4/2019 |
2.0.0-Preview1 | 272 | 10/26/2019 |
1.0.0-Preview3 | 998 | 9/23/2019 |
1.0.0-Preview2 | 297 | 9/19/2019 |
1.0.0-Preview1 | 313 | 8/24/2019 |
0.7.2-beta.2 | 343 | 7/25/2019 |
0.7.0-beta.1 | 336 | 6/15/2019 |
0.6.0-beta-1 | 300 | 6/14/2019 |
0.5.1-alpha-2 | 356 | 6/12/2019 |
0.5.0-alpha-1 | 402 | 6/5/2019 |
0.4.0-alpha-2 | 421 | 5/8/2019 |
0.4.0-alpha-1 | 477 | 4/20/2019 |
0.3.0-alpha-3 | 433 | 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]