|
|
@ -16,7 +16,7 @@ namespace FluentBlazorApp.States |
|
|
|
if (string.IsNullOrEmpty(Constants.JWTToken)) |
|
|
|
if (string.IsNullOrEmpty(Constants.JWTToken)) |
|
|
|
return await Task.FromResult(new AuthenticationState(ANONYMOUS)); |
|
|
|
return await Task.FromResult(new AuthenticationState(ANONYMOUS)); |
|
|
|
|
|
|
|
|
|
|
|
var userClaims = DecryptToken(Constants.JWTToken); |
|
|
|
var userClaims = DecryptJWTTokenService.DecryptToken(Constants.JWTToken); |
|
|
|
if (userClaims == null) |
|
|
|
if (userClaims == null) |
|
|
|
return await Task.FromResult(new AuthenticationState(ANONYMOUS)); |
|
|
|
return await Task.FromResult(new AuthenticationState(ANONYMOUS)); |
|
|
|
|
|
|
|
|
|
|
@ -29,13 +29,13 @@ namespace FluentBlazorApp.States |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public async void UpdateAuthenticationState(string jwtToken) |
|
|
|
public void UpdateAuthenticationState(string jwtToken) |
|
|
|
{ |
|
|
|
{ |
|
|
|
var claimsPrincipal = new ClaimsPrincipal(); |
|
|
|
var claimsPrincipal = new ClaimsPrincipal(); |
|
|
|
if (!string.IsNullOrEmpty(jwtToken)) |
|
|
|
if (!string.IsNullOrEmpty(jwtToken)) |
|
|
|
{ |
|
|
|
{ |
|
|
|
Constants.JWTToken = jwtToken; |
|
|
|
Constants.JWTToken = jwtToken; |
|
|
|
var getUserClaims = DecryptToken(jwtToken); |
|
|
|
var getUserClaims = DecryptJWTTokenService.DecryptToken(jwtToken); |
|
|
|
claimsPrincipal = SetClaimPrincipal(getUserClaims); |
|
|
|
claimsPrincipal = SetClaimPrincipal(getUserClaims); |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
else |
|
|
@ -46,18 +46,6 @@ namespace FluentBlazorApp.States |
|
|
|
NotifyAuthenticationStateChanged(Task.FromResult(new AuthenticationState(claimsPrincipal))); |
|
|
|
NotifyAuthenticationStateChanged(Task.FromResult(new AuthenticationState(claimsPrincipal))); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public static CustomUserClaims DecryptToken(string jwtToken) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
if (string.IsNullOrEmpty(jwtToken)) |
|
|
|
|
|
|
|
return new CustomUserClaims(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var handler = new JwtSecurityTokenHandler(); |
|
|
|
|
|
|
|
var token = handler.ReadJwtToken(jwtToken); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var name = token.Claims.FirstOrDefault(t => t.Type == ClaimTypes.Name); |
|
|
|
|
|
|
|
return new CustomUserClaims(name!.Value); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static ClaimsPrincipal SetClaimPrincipal(CustomUserClaims claims) |
|
|
|
public static ClaimsPrincipal SetClaimPrincipal(CustomUserClaims claims) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (claims.Name is null) |
|
|
|
if (claims.Name is null) |
|
|
|